"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment détecter lorsqu'un utilisateur fait défiler vers le bas d'une division dans jQuery ?

Comment détecter lorsqu'un utilisateur fait défiler vers le bas d'une division dans jQuery ?

Publié le 2024-11-08
Parcourir:186

How to Detect When a User Scrolls to the Bottom of a Div in jQuery?

Comment détecter lorsque l'utilisateur fait défiler vers le bas d'une division avec jQuery

Vous avez créé un élément div avec un contenu dynamique qui comporte un " réglage de trop-plein automatique. Pour améliorer l'expérience utilisateur, vous souhaitez charger du contenu supplémentaire lorsque l'utilisateur fait défiler vers le bas de cette boîte div. Cependant, vous ne savez pas comment détecter cet événement spécifique.

La clé de cette détection réside dans l'utilisation de propriétés et de méthodes jQuery spécifiques :

  • $().scrollTop() : Indique le nombre de pixels sur lequel l'élément a défilé.
  • $().innerHeight() : Représente la hauteur intérieure de l'élément. element
  • DOMElement.scrollHeight : renvoie la hauteur du contenu de l'élément

Pour déterminer quand l'utilisateur a atteint le bas du div, vous pouvez comparer la somme des deux premières propriétés à la troisième propriété. Lorsque ces valeurs correspondent, la fin du div a été atteinte.

jQuery(function($) {
    $('#flux').on('scroll', function() {
        if($(this).scrollTop()   $(this).innerHeight() >= $(this)[0].scrollHeight) {
            alert('end reached');
        }
    })
});

Cette solution utilise la méthode on(), qui est préférée pour la gestion des événements dans les versions 1.7 de jQuery.

Notes supplémentaires :

  • L'écouteur d'événements est attaché au div avec l'ID #flux, qui représente l'élément que vous souhaitez surveiller.
  • La fonction alert() est utilisée à des fins de démonstration fins. Vous pouvez inclure votre propre logique pour charger du contenu supplémentaire ici.
  • Un exemple en direct peut être trouvé sur http://jsfiddle.net/doktormolle/w7X9N/.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3