我发现FF和Chrome(版本22.0.1229.94 m)之间存在差异。 FF是对的(我会说)。
当向下滚动页面并点击然后刷新它时,
的回调$(window).ready(function(){
console.log( $(document).scrollTop() );
});
控制台应该说在窗口准备好之后滚动了金额,但在Chrome中它总是0
如何在Chrome中显示获取scrollTop的数量?
答案 0 :(得分:0)
正如评论中所说,Chrome加载页面,然后向下滚动。 因此,当触发jQuery事件时,滚动为0。 你可以这样做一些工作:
$(document).ready(function() {
function getScroll() {
var scroll = $(window).scrollTop();
...
}
getScroll();
$(window).scroll(getScroll);
});
因此,Chrome $(window).scroll();
将在页面加载后立即触发。
答案 1 :(得分:0)
问题是Chrome中的 document.ready()是在之前执行浏览器向下滚动到上一个点,这就是为什么你总是得到一个零值。这里提供了一个解决方案:Get vertical position of scrollbar for a webpage on pageload when the url contains an anchor