jquery在$(窗口)中滚动事件,找出位置差异

时间:2011-06-18 21:33:30

标签: jquery

我正在使用:

$(window).scroll(function(e){
.....
});

如何找出滚动的像素数(以及方向,如果是绝对数)?

感谢名单

4 个答案:

答案 0 :(得分:13)

这是一种方式:

jQuery(function($) {
    var lastScroll = document.body.scrollTop;
    $(window).scroll(function(e) {
        var newScroll = document.body.scrollTop;
        console.log(newScroll - lastScroll);
        lastScroll = newScroll;
    });
});

答案 1 :(得分:8)

使用scrollTop确定您要查找的内容。

答案 2 :(得分:2)

以下这行不适用于Firefox 19(我今年更新时间:2013年)。

var lastScroll = document.body.scrollTop;

该解决方案还将改进跨浏览器的兼容性,即使用jQuery调用:

var lastScroll = $(document).scrollTop();

最终结果:

$(function(){
    var lastScroll = $(document).scrollTop();
    $(window).scroll(function(e) {
        var newScroll = $(document).scrollTop();
        console.log(newScroll - lastScroll);
        lastScroll = newScroll;
    });
});

享受!

答案 3 :(得分:2)

你可以试试这个:

$('selector').bind('scroll', function(e){
    e.currentTarget.scrollTop; // .scrollLeft ...
});