Déterminer quand défile vers le bas d'une page avec Javascript

J'essaie de déterminer quand j'ai parcouru le bas de la page (sans utiliser de bibliothèque JS), mais jusqu'à présent, je suis un peu confus sur l'une des options suivantes. Le plus prometteur que j'ai vu est window.scrollY , mais même lorsqu'il est défilé vers le bas de la page, il ne correspond jamais à la valeur de window.innerHeight . Quelle est la meilleure façon de le faire?

 window.innerWidth window.innerHeight window.outerWidth window.outerHeight window.scrollX window.scrollY document.body.scrollWidth document.body.scrollHeight document.body.scrollTop document.body.scrollLeft document.body.offsetTop document.body.offsetLeft document.body.offsetWidth document.body.offsetHeight 

Lorsque window.innerHeight + document.body.scrollTop est supérieur ou égal à document.body.offsetHeight alors vous êtes au bas

Mais comme IE a des problèmes avec ces propriétés, vous devez utiliser des propriétés alternatives, comme

document.documentElement.scrollTop pour le scroll et document.documentElement.clientHeight pour la hauteur de la fenêtre

Code complet: http://jsbin.com/egegu3/6/edit

Étant une personne paresseuse au cœur, je mettrais un élément au fond du DIV, et j'appliquerai le plugin jQuery " élément en vue ". (Avertissement: je n'ai aucune expérience personnelle avec ça, mais ça a l'air bien.)

Une légère variation de l'exemple de l'entrée du blog:

 $('#bottomDIV').bind('inview', function (event, visible) { if (visible == true) { // element is now visible in the viewport highlightButtons(); // or whatever you want to do in the context } });