jQuery的scroll()方法允许您在元素滚动时执行函数。但是,它没有提供一种直接的方法来检测滚动何时停止。
要确定滚动何时停止,我们可以使用定时事件处理程序。这是一个示例:
$(window).scroll(function() { clearTimeout($.data(this, 'scrollTimer')); $.data(this, 'scrollTimer', setTimeout(function() { // Scrolling has stopped console.log("Haven't scrolled in 250ms!"); }, 250)); });
在此代码中,我们设置一个计时器并在用户每次滚动时重置它。如果计时器到期,则表明滚动已停止。
或者,我们可以使用 jQuery Unevent.js 扩展提供的扩展 on() 函数:
$(window).on('scroll', function(e) { console.log(e.type + '-event was 250ms not triggered'); }, 250);
Unevent.js 允许我们为事件处理程序指定延迟参数。这样,处理程序仅在给定时间间隔内未发生事件时才会触发。
以上是如何使用 jQuery 检测滚动何时停止?的详细内容。更多信息请关注PHP中文网其他相关文章!