我正在使用绝对定位的 body 元素来防止 mac os 中的“有弹性”滚动行为。这样,它不是滚动的窗口,而是不“反弹”的主体元素。
但现在 scrollTop() 值始终为 0。
我需要知道我滚动了多少 body 元素。有任何想法吗?
编辑:它似乎适用于 Mac OS X Firefox 13.0。但在 Mac OS X Chrome 19 中没有。似乎是 webkit 问题,Safari 也没有工作。
我正在使用绝对定位的 body 元素来防止 mac os 中的“有弹性”滚动行为。这样,它不是滚动的窗口,而是不“反弹”的主体元素。
但现在 scrollTop() 值始终为 0。
我需要知道我滚动了多少 body 元素。有任何想法吗?
编辑:它似乎适用于 Mac OS X Firefox 13.0。但在 Mac OS X Chrome 19 中没有。似乎是 webkit 问题,Safari 也没有工作。
我想您可以将包装器 <div>
直接放在正文中,然后将所有其他内容放入该包装器中。
例如,
<body>
<div id="wrapper">
<!-- Content -->
</div>
</body>
然后,在 $('body').scroll() 上,您可以考虑该包装器的偏移位置,而不是查看 $('body').scrollTop():$('#wrapper').position() 。最佳
我在这里修改了你的小提琴:http: //jsfiddle.net/bT9fV/1/
在 Chrome 19 中似乎可以正常工作
该包装器的偏移位置将为您提供与 scrollTop() 基本相同的信息,所以我想不出这还不够的原因。