我需要检测用户滚动的方向 - “向上”还是“向下”。基于这个答案中找到的代码:如何确定jQuery滚动事件的方向?,我尝试将其包装在一个函数中,使其更具区分性 - 但不幸的是,它没有起作用。我认为这与我返回值的方式有关,但方向始终是“向上”。由于我对JavaScript还比较新,我无法解决这个问题。
以下是代码:
以下是代码:
$(document).ready(function () {
'use strict';
var lastScrollTop = 0,
st,
direction;
function detectDirection() {
st = window.pageYOffset;
if (st > lastScrollTop) {
direction = "down";
} else {
direction = "up";
}
lastScrollTop = st;
return direction;
}
$(window).bind('scroll', function() {
detectDirection();
console.log(detectDirection());
});
});
我还设置了一个Fiddle。
你能帮我找出问题在哪里吗?