首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >检测用户是否正在滚动

检测用户是否正在滚动
EN

Stack Overflow用户
提问于 2012-05-16 00:39:00
回答 3查看 143.8K关注 0票数 94

如何在javascript中检测用户是否正在滚动?

EN

回答 3

Stack Overflow用户

发布于 2012-05-16 00:58:43

你刚刚在你的标签中写了javascript,所以@Wampie post可以帮助你。

我也想做出贡献,所以如果你需要的话,你可以在使用jQuery时使用以下内容。

 //Firefox
 $('#elem').bind('DOMMouseScroll', function(e){
     if(e.detail > 0) {
         //scroll down
         console.log('Down');
     }else {
         //scroll up
         console.log('Up');
     }

     //prevent page fom scrolling
     return false;
 });

 //IE, Opera, Safari
 $('#elem').bind('mousewheel', function(e){
     if(e.wheelDelta< 0) {
         //scroll down
         console.log('Down');
     }else {
         //scroll up
         console.log('Up');
     }

     //prevent page fom scrolling
     return false;
 });

另一个例子:

$(function(){
    var _top = $(window).scrollTop();
    var _direction;
    $(window).scroll(function(){
        var _cur_top = $(window).scrollTop();
        if(_top < _cur_top)
        {
            _direction = 'down';
        }
        else
        {
            _direction = 'up';
        }
        _top = _cur_top;
        console.log(_direction);
    });
});​
票数 11
EN

Stack Overflow用户

发布于 2018-09-20 05:36:18

window.addEventListener("scroll",function(){
    window.lastScrollTime = new Date().getTime()
});
function is_scrolling() {
    return window.lastScrollTime && new Date().getTime() < window.lastScrollTime + 500
}

将500更改为您认为用户“不再滚动”的最后一次滚动事件后的毫秒数。

(addEventListeneronScroll更好,因为前者可以与任何其他使用onScroll的代码很好地共存。)

票数 7
EN

Stack Overflow用户

发布于 2019-11-28 18:21:32

使用间隔来检查

您可以设置一个时间间隔来持续检查用户是否已滚动,然后执行相应的操作。

借用his article中伟大的John Resig

示例:

    let didScroll = false;

    window.onscroll = () => didScroll = true;

    setInterval(() => {
        if ( didScroll ) {
            didScroll = false;
            console.log('Someone scrolled me!')
        }
    }, 250);

See live example

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10605197

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档