我在Safari中遇到了一个问题-当在页面滚动时改变一个元素的高度和另一个元素的边距时,图像闪烁或抖动。
这在Chrome/Firefox (OSX)中运行得很顺利,但你会在Safari上看到这个问题:
http://jsfiddle.net/y1Lrnd24/7/$(window).scroll(function () {
var imgHeight = 300;
var scrollTop = $(window).scrollTop();
var slideHeight = imgHeight - scrollTop;
var marginTop = scrollTop;
if (slideHeight > 0) {
$('.slide').css('height', slideHeight);
$('#slide-holder').css('paddingTop', marginTop);
}
});
(全屏显示可能更好:https://jsfiddle.net/y1Lrnd24/7/embedded/result/)
有人知道线索吗?我试着把marginTop改成paddingTop,但是没有效果。
感谢任何帮助-希望这是一个快速修复!
编辑:我想我应该在这里补充一下,当使用鼠标滚轮时,这个"bug"是最明显的…
实际上,在Safari中查看JSfiddle对我来说完全正常。这让我怀疑其他的东西——在Safari中安装了插件吗?你试过重置Safari吗?
http://osxdaily.com/2014/01/09/fix-safari-problems-mac-reset/从我读到的,Chrome和Safari使用相同/类似的渲染引擎…如果一个正常工作而另一个不正常,那么这可能是Safari的问题。