破碎的视差滚动

时间:2015-05-25 19:43:23

标签: javascript jquery html css parallax

最近,我注意到我的视差码造成了一种奇怪的左右抖动。代码非常简单:

$(window).scroll(function(){
    var body = $('body');
    var top = $(this).scrollTop();
    $('.carousel-inner img').css('top', top / 2);
}); 

在此演示中可以看到相同的抖动问题 http://www.bootply.com/vTCajmeQHQ

为什么会这样?浏览器渲染滚动事件的方式有变化吗?我怎样才能修复它以免抖动?这只是几个月前才开始发生的,之前很顺利。

我的标记看起来像这样                     <%= image_tag'img.jpg'%>                       <%= image_tag'img1.jpg'%>            

1 个答案:

答案 0 :(得分:0)

确切的问题,特别是如果您遵循您提供的示例中的代码,是BG图像的初始定位。

因此,初步立场是:

background: url('/assets/example/bg_blueplane.jpg') no-repeat center center fixed;

但是当你应用新款式时,"中心"定位重置并相对于窗口顶部重新定位。我实际上很确定这会发生在您提供的示例中的其他图片中,只有当我们开始滚动时我们才能看到它们。

取出初始定位,你应该得到你正在寻找的效果。