Javascript – Comment puis-je détecter quand un utilisateur est en haut de la page Web

Je suis tout à fait complètement nouveau pour javascript, et je sais qu'il y a déjà une question similaire à ce sujet, mais j'aimerais que le script soit utilisé.

Si (l'utilisateur est en haut de la page) {(exécutez cette fonction)}

Merci d'avance

Il s'agit d'un petit extrait que j'utilise pour déterminer le défilement d'une page, je ne me souviens pas où je l'ai obtenu, ou si je l'ai écrit moi-même, alors je ne peux pas le créditer.

var st=0; if(typeof pageYOffset!= 'undefined'){ //most browsers st = pageYOffset; } else { var B = document.body; //IE 'quirks' var D = document.documentElement; //IE with doctype D = (D.clientHeight)? D: B; st = D.scrollTop; } 

Si st == 0, l'utilisateur est en haut de la page!

J'utilise une fonction pour la rendre compatible entre les navigateurs, qui peut être trouvée ici: Méthode croisée pour détecter le scrollTop de la fenêtre du navigateur

 function getScrollTop(){ if(typeof pageYOffset!= 'undefined'){ //most browsers return pageYOffset; } else{ var B= document.body; //IE 'quirks' var D= document.documentElement; //IE with doctype D= (D.clientHeight)? D: B; return D.scrollTop; } } if(!getScrollTop()){ // user is at the top } 

Voici une petite démo: http://jsfiddle.net/uDS4n/1/

Voici une solution propre qui devrait avoir du sens si vous êtes nouveau chez JS:

 //call your function on scroll window.onscroll = myScrollFunction; function myScrollFunction(){ if(getYOffset() == 0){ //if at top, do this alert('bingo'); } }; //helper function (since ie handles scrolling different than firefox) function getYOffset() { var pageY; if(typeof(window.pageYOffset)=='number') { pageY=window.pageYOffset; } else { pageY=document.documentElement.scrollTop; } return pageY; }