我需要检测用户何时滚动到我的页面底部。所以我搜索了一下并找到了很多帮助,所有答案基本相同,只是可能略有不同。我已经尝试了基本上所有可以找到的不同版本,但它们都表现出相同的行为。而不是等我滚动到我的页面底部(实际上滚动条一直到底部),当我滚动一点点时它会触发。所以我的滚动条只移动了一厘米或更少,事件就会触发。
我现在使用的代码是stackoverflow.com/questions/3898130/
在接受的答案中有两个版本,第一个实际上根本没有。
$(window).scroll(function () {
if($(window).scrollTop() + $(window).height() == $(document).height()) {
//do stuff
}
})
$(window).scroll(function () {
if($(window).scrollTop() + $(window).height() == $(document).height()) {
//do stuff
}
})
但是,如果我将其更改为第二个版本(甚至将偏移设置为0)它会触发,但它会过早发生。在用户实际滚动到底部之前。
$(window).scroll(function() {
if($(window).scrollTop() + $(window).height() > $(document).height() - 100) {
//do stuff
}
});
现在这不是一个大问题,我想我可以忍受它,但它真的很烦人。有没有人知道我可能做错了什么?我正在使用Chrome进行测试,但Firefox中也会出现相同的行为。
谢谢!
答案 0 :(得分:1)
通过输入第一行确保您的html设置了DOCTYPE:
<!DOCTYPE html>
价: Jquery $(window).height() function does not return actual window height