My site具有停止滚动的视差效果。我用来停止滚动的代码是:
if ( parseInt($("div#bg").css("top"), 10) <= -0 ) {
$('#content').css('top', (-0) + 'px');
$('#logo').css('margin-top', (-142) + 'px');
}
这在Chrome,Firefox和Opera中运行良好,但在Safari中却没有那么多。在Safari中使用不同的代码吗?我知道Safari在滚动时有一个bug,但我找不到答案。是否有解决方法使其在Safari中也可以使用?或者某种编辑器,我可以运行我的代码?
答案 0 :(得分:1)
第一件事:你在布局上遇到了一些问题,因为我甚至没有在Safari上看到你的作品库。我确实看到,所有的画廊元素都是主div中的单个元素,没有容器,这可能导致非常难以控制的情况。
回到主题
parseInt($("div#bg").css("top"), 10)
返回NaN,我想这可能是你的问题。 #bg的最高值设置为“auto”,因此parseInt()将返回NaN,因为第一个(以及所有其他字符:D)是CHAR而不是数字。
代码正在使用Chrome,因为它的javascript引擎更具弹性,但实际上并不适用于其他浏览器。
建议: 你见过Skrollr吗?它是一个用于视差效果的开源jquery库。它的写得非常好,看起来它真的可以在这里度过一天。