检测用户是否滚动
如何在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); }); });