Mit der scroll()-Methode von jQuery können Sie eine Funktion ausführen, wenn ein Element gescrollt wird. Es bietet jedoch keine einfache Möglichkeit, zu erkennen, wann das Scrollen aufhört.
Um festzustellen, wann das Scrollen aufgehört hat, können wir einen zeitgesteuerten Ereignishandler verwenden. Hier ist ein Beispiel:
$(window).scroll(function() { clearTimeout($.data(this, 'scrollTimer')); $.data(this, 'scrollTimer', setTimeout(function() { // Scrolling has stopped console.log("Haven't scrolled in 250ms!"); }, 250)); });
In diesem Code stellen wir einen Timer ein und setzen ihn jedes Mal zurück, wenn der Benutzer scrollt. Wenn der Timer abläuft, bedeutet dies, dass das Scrollen gestoppt wurde.
Alternativ können wir die erweiterte on()-Funktion verwenden, die von der jQuery-Erweiterung Unevent.js bereitgestellt wird:
$(window).on('scroll', function(e) { console.log(e.type + '-event was 250ms not triggered'); }, 250);
Unevent.js ermöglicht es uns, einen Verzögerungsparameter für Event-Handler anzugeben. Auf diese Weise wird der Handler nur ausgelöst, wenn das Ereignis nicht innerhalb des angegebenen Intervalls aufgetreten ist.
Das obige ist der detaillierte Inhalt vonWie kann ich mit jQuery erkennen, wann das Scrollen stoppt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!