从这个问题on - How can I determine the direction of a jQuery scroll event?开始,我写了这段代码。
var lastS=$(window).scrollTop();
function whatHappened()
{
var currentS=$(window).scrollTop();
console.log(lastS,currentS);
if(currentS>lastS)
{
lastS = currentS;
return "Scroll down";
}
else
{
lastS = currentS;
return "Scroll up";
}
}
$(window).on("mousewheel",function(){
console.log(whatHappened());
});
这似乎工作得很好,但有一个小问题。如果我向下滚动超过两次,然后向上滚动,它首先显示向下滚动,然后向上滚动。反之亦然。怎么了?请帮帮忙。提前谢谢。
发布于 2014-06-01 06:06:17
鼠标滚轮事件是非标准的-在你的例子中,它可能是在滚动信息更新之前触发的,所以你总是在“前一个”滚动高度上操作。
https://stackoverflow.com/questions/23977161
复制