我正在尝试检测用户何时在看到页脚的第一个像素之前滚动到该点。
以下是我试图计算页脚之前位置的方法:
footerVisible = $(document).height() - $(window).height() - $('footer').height() - 1;
alert(footerVisible);
我正在取整个文档的高度并减去视口高度和页脚高度。
这会提醒我3695
。
现在我正在记录滚动位置:
$window.scroll(function(e){
console.log($window.scrollTop());
}
当一直滚动到文档底部时(即:查看完整的页脚和文档结尾),控制台会指示我位于3211
位置。
我的逻辑显然在某处有缺陷......
如何计算用户在看到页脚的第一个像素之前所处的'scrollTop'位置。 任何人都可以在用户看到页脚之前提供一个提醒警告的小提琴吗?
修改 提供小提琴here
答案 0 :(得分:1)
要查看页脚的第一个像素",滚动位置必须比距页脚高度一个窗口高度少一个像素。
var footerVisible = $(document).height() - $(window).height() - $('footer').height() - 1;
你的滚动功能应该是这样的:
$(window).scroll(function() {
if( $(window).scrollTop() >= footerVisible ) {
alert('Footer Visible');
}
});