Événement de défilement de jQuery pour détecter lorsque l'utilisateur arrête de défiler
L'événement scroll() de jQuery est utile pour détecter quand un utilisateur fait défiler. Cependant, pour certains scénarios, il est également nécessaire de savoir quand le défilement s'est arrêté.
Solution :
Pour y parvenir, on peut utiliser une combinaison de scroll( ), clearTimeout() et setTimeout().
$(window).scroll(function() { clearTimeout($.data(this, 'scrollTimer')); $.data(this, 'scrollTimer', setTimeout(function() { console.log("Haven't scrolled in 250ms!"); }, 250)); });
Voici comment procéder fonctionne :
Amélioration à l'aide de l'extension jQuery :
Une approche alternative consiste à utiliser une extension jQuery appelée "jQuery.unevent.js":
$(window).on('scroll', function(e) { console.log(e.type + '-event was 250ms not triggered'); }, 250);
En passant un délai comme dernier paramètre à la méthode on(), nous pouvons spécifier l'intervalle minimum entre les déclencheurs d'événements.
Avantages de cette approche :
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!