HJÆLP! JS Scroll function

Her kan du få hjælp og stille spørgsmål til JavaScript!
Besvar
AnneMeinertz
Begynder
Indlæg:1
Tilmeldt:15. jun 2019, 21:52
HJÆLP! JS Scroll function

Indlæg af AnneMeinertz » 15. jun 2019, 21:57

Hej jeg er helt ny herinde og er ikke helt 100% på om dette opslag er ok, men er der nogen der kan forklare mig dette på et begynder venligt niveau og så detaljeret, som overhovedet muligt.
Jeg er bedst til bare at få det til at virke uden rigtig at vide hvad de enkle ting gør. Det går bare ikke til eksamen ;)

var prevScrollpos = window.pageYOffset;
window.onscroll = function() {
var currentScrollPos = window.pageYOffset;
if (prevScrollpos < 40)
{ document.getElementById("MenuSvommehal").style.top = "38px";
}
else {
document.getElementById("MenuSvommehal").style.top = "0";
}
prevScrollpos = currentScrollPos;
}

jepperask
Geni
Geni
Indlæg:378
Tilmeldt:4. nov 2012, 17:57

Re: HJÆLP! JS Scroll function

Indlæg af jepperask » 17. jun 2019, 11:45

"window.pageYOffset" giver dig hvor langt nede brugeren har scrollet i vinduet.
"window.onscroll" er et event man kan subscribe en funktion til, således at funktionen kaldes hver gang brugeren scroller.
"window.onscroll = function() { ... }" laver den subscription.

Det ligner at funktionen tjekker om man er mindre end 40px fra toppen, og hvis man er, så styler den #MenuSvommehal til at have "top: 38px;" - hvis man er længere fra toppen end 40, så er "top: 0px;". Værdien gemmes i variablen "currentScrollPos". Jeg er dog ikke helt sikker på hvorfor man tester den forrige værdi, fremfor den nuværende.

Besvar