237 votes

Détecter lorsque l’utilisateur effectue un défilement vers le bas des div avec jQuery

J'ai un div zone (appelée flux) avec une quantité variable de contenu à l'intérieur. Cette divbox a dépassement de la valeur auto.

Maintenant, ce que j'essaie de faire, c'est, quand à l'utilisation de défilement vers le bas de cette DIV-zone, charger plus de contenu dans la page, je sais comment le faire (charger le contenu), mais je ne sais pas comment faire pour détecter lorsque l'utilisateur a défiler vers le bas de la balise div? Si je voulais le faire pour l'ensemble de la page, je voudrais prendre .scrollTop et soustrayez-le de .hauteur de.

Mais je n'arrive pas à le faire ici?

J'ai essayé de prendre .scrollTop de flux, et puis, enveloppant tout le contenu à l'intérieur d'un div appelé intérieure, mais si je prends le innerHeight de flux, il retourne 564px (le div est fixée à 500 et la hauteur de la "innner' il retourne 1064, et la scrolltop, quand au fond de la div dit 564.

Que puis-je faire? :S

Merci! :)

458voto

Dr.Molle Points 61743

Il y a certaines propriétés/méthodes, que vous pouvez utiliser :

Donc vous pouvez prendre la somme des deux premières propriétés, et lorsqu’elle est égale à la dernière propriété, vous avez atteint la fin :

http://jsfiddle.net/doktormolle/w7X9N/

59voto

ehsan Aghaei Points 61

J’ai trouvé une solution que lorsque vous faites défiler votre fenêtre et fin d’un div montré du bas vous donne une alerte.

int son exemple si vous faites défiler vers le bas quand div (.posts) terminer sa donnez vous une alerte ; Désolé pour la mauvaise écriture ;

10voto

Juste une note complémentaire ici car j’ai trouvé ceci lorsque vous cherchez une solution pour un div fixe que je veux faire défiler. Pour mon scénario j’ai trouvé que son préférable de prendre en compte le rembourrage sur la div, donc je peux frapper la fin exactement. Alors en pleine expansion sur la réponse du @Dr .molle j’ai ajouter ce qui suit

Qui vous donne la localisation précise, y compris les bordures et remplissage

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X