如何在Jquery中完成滚动检测?

时间:2017-10-27 18:12:09

标签: jquery onscroll

我尝试在用户停止在我的网站上滚动后执行某个功能,但是我无法找到解决方法来检测用户何时停止滚动...

这是我使用

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

是否有类似事件或某事我可以查看滚动是否已完成?

1 个答案:

答案 0 :(得分:0)

滚动时会发生

滚动,所以如果要检查用户是否停止滚动,则需要使用定时器。

如果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()
  }

});