jquery 判断滚动方向 向上还是向下

发布于 2022-09-01 06:57:34 字数 93 浏览 30 评论 0

$(window).on('scroll',function(e){})
如果用jquery判断 滚动 是向上还是向下吗。
看着原生的判断好像有点麻烦。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

绿光 2022-09-08 06:57:34

原生的并不会很麻烦啊,给一个原生的示例吧(可直接在当前页面控制台中运行查看效果),原理就是判断滚动前后的scrollTop来判断到底是上滚还是下滚。懂了原理之后不管是原生的还是 jQuery 的就都 OK 了:

scroll(function(direction) { console.log(direction) });    
function scroll( fn ) {
    var beforeScrollTop = document.body.scrollTop,
        fn = fn || function() {};
    window.addEventListener("scroll", function() {
        var afterScrollTop = document.body.scrollTop,
            delta = afterScrollTop - beforeScrollTop;
        if( delta === 0 ) return false;
        fn( delta > 0 ? "down" : "up" );
        beforeScrollTop = afterScrollTop;
    }, false);
}
萧瑟寒风 2022-09-08 06:57:34

大师,帮忙看看jq版的,我的bescroll 的值,滚动后一直不变,是个什么情况呢?

var bescroll = $(document).scrollTop();
function ss(){
$(window).scroll(function(){
 var afscroll = $(document).scrollTop();
 var res = afscroll - bescroll;
 if(res>0){
alert('xia'+afscroll);
 }else{
alert('shang'+afscroll);
bescroll = afscroll;
 }
});
}
ss();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文