Több Section-om van, teljes képernyő méretűek. Azt szeretném, hogy amikor valaki görget az oldalon, akkor 1 másodperc "tétlenség" után automatikusan a közelebb lévő divre görgessen?
Így néz ki a HTML:
<section id="elso"></section>
<section id="masodik"></section>
<section id="harmadik"></section>
Mindegyik teljes magasságú, tehát 100vh-re vannak állítva.
Amikor görgetsz, nem biztos, hogy sikerül pontosan rá görgetni az adott section-re, hogy teljes méretben láthasd. Azt szeretném megoldani, hogy amikor görgetsz, és esetleg nem vagy teljes egészében rajta a sectionon, akkor oda görgessen az oldal.
JavaScripttel hogy lehet ezt megoldani?
Le kell kérned a DOM objektum elhelyezkedését az oldalon. Erre rengeteg féle javaslat van, soknak környezettől függően buktatójuk is, meg kell találnod a számodra működőt, de ez kutató munka. Ha jól rémlik, a getBoundingClientRect valami olyasmit művel.
Ez után az oldalt kell a lekért pozícióba "scroll-oznod". window.scrollTo segít.
Az egy másodperces tétlenséget már körülményesebb, mivel eseményekre tudsz feliratkozni, míg a semmire nem. Javaslom, az összes interakcióhoz köss egy callback függvényt (kattintás, görgetés, stb), ami előfordulhat, és ebben egy időzítőt állítasz az utolsó cselekedetre. A háttérben egy időzítő pedig folyamatosan ellenőrzi, hogy az aktuális idő és az utolsó cselekedet között eltelt idő megvan-e már egy másodperc.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!