Maison  >  Article  >  interface Web  >  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 ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-30 02:16:29757parcourir

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
  • 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.

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

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énement est attaché au div avec l'ID #flux, qui représente l'élément que vous souhaitez surveiller.
  • L'alerte () est utilisée à des fins de démonstration. 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/.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn