scrollLeft元素的滚动速度比文档的其余部分快

Oll*_*haw 5 html jquery parallax

我有一个具有固定位置的元素,但是能够使用我在JsFiddle上这个例子中使用的jQuery计算向左和向右滚动.

$(window).scroll(function(event) {
var x = 0 - $(this).scrollLeft();
var y = $(this).scrollTop();

// whether that's below the form
if (y >= top) {
    // if so, ad the fixed class
    $('.scroll_fixed').addClass('fixed');
} else {
    // otherwise remove it
    $('.scroll_fixed').removeClass('fixed');
}

$(".scroll_fixed").offset({
    left: x + leftInit
});

});
Run Code Online (Sandbox Code Playgroud)

该解决方案效果很好,直到我必须向左滚动,其中元素滚动"视差"对文档的其余部分 - 即,它滚动大约是文档其余部分的两倍.

我知道这是jQuery计算的问题,但是想知道是否有人之前遇到过这个问题?如果是这样,你是如何解决的?我有点亏......

编辑

问题解决了 - 这是因为代码使用$(window).scrollLeft(); 而不是我希望操纵的元素范围内的父元素.

包装器div被归类为"wrapperDiv",因此我使用了$(".wrapperDiv").scrollLeft();

我会按照要求标记这个问题,但由于我是Stack Overflow的新手,我再也无法回答7个小时....

Dav*_*vid 0

只是为了将此问题标记为已回答:

“这是因为代码使用的$(window).scrollLeft();是我希望操作的元素范围内的父元素,而不是父元素。包装器 div 被归类为“wrapperDiv”,所以我使用了$(".wrapperDiv").scrollLeft();