检测用户是否滚动

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

这工作:

 window.onscroll = function (e) { // called when the window is scrolled. } 

编辑:

你说这是一个TimeInterval中的函数..
尝试这样做:

 userHasScrolled = false; window.onscroll = function (e) { userHasScrolled = true; } 

然后在你的Interval里插入这个:

 if(userHasScrolled) { //do your code here userHasScrolled = false; } 

你只是说在你的标签的JavaScript,所以@Wampie Driessen后可以帮助你。

我也想贡献,所以你可以使用下面的时候使用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); }); });​