如果您查看此链接 http://jsfiddle.net/Hbkdt/ .
$(window).scroll(function() {
$(".fixed").css("top", $(window).scrollTop() + "px");
});
向下移动滚动条。然后你可以看到 .fixed DIV 在 FF 中运行流畅,但在 Safari 和 Webkit 中运行不流畅。
我不知道该如何解决。任何帮助表示赞赏:)
我在 mac 中使用 Chrome 版本 22.0.1229.94。
最佳答案
你只使用 position: absolute
并在元素上设置 scrollTop
因为当使用 position: fixed
时,如果窗口宽度小于元素的宽度,元素的一部分将被隐藏,即使您向右滚动以尝试查看它也是如此:
解决此问题的另一种方法是坚持使用 position: fixed
,然后解决部分元素被隐藏的问题:
http://jsfiddle.net/thirtydot/Hbkdt/26/
元素的 left
属性在滚动设置上,使水平滚动看起来按预期工作:
$(window).scroll(function() {
$(".fixed").css("left", -$(window).scrollLeft() + "px");
});
由于 position: fixed
现在再次使用,垂直滚动非常流畅。
关于jquery - scrolltop() 在 chrome 和 safari 中运行不流畅,但在 firefox 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13156255/