【问题标题】:How to detect when scrolling has finished in Jquery? [duplicate]如何在 Jquery 中检测滚动何时完成? [复制]
【发布时间】:2018-04-09 10:03:06
【问题描述】:

我正在尝试在用户停止在我的网站上滚动后执行一项功能,但我无法找到有关如何检测用户何时停止滚动的解决方案...

这是我正在使用的功能

$(window).on('scroll', function() {
   existingFunction();
   //code to be executed when the scroll has finished
});

有什么事件或什么我可以检查滚动是否完成?

【问题讨论】:

标签: jquery onscroll


【解决方案1】:

滚动时会发生滚动,因此如果您想检查用户是否停止滚动,您需要使用计时器。

如果 1 秒延迟不好,只需更改它,但这是基本思想

var now = null;

function startInterval(){
 var interval = setInterval(function(){
    if(Date.now() > now +1000){
        clearInterval(interval)
        now = null;
        existingFunction();
    }
  },1000)
}
function existingFunction(){
 console.log('finish')
}
$(window).on('scroll', function() {
  if(now === null){
     now = Date.now()
     startInterval()
  }
  else{
  now = Date.now()
  }

});

【讨论】:

    猜你喜欢
    • 2010-11-02
    • 2018-11-22
    • 2015-08-15
    • 1970-01-01
    • 2021-03-11
    • 2019-02-09
    • 2013-05-07
    • 1970-01-01
    • 2011-12-08
    相关资源
    最近更新 更多