5

固定位置を持つ要素がありますが、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
});

});

左にスクロールする必要があるまでは、解決策はうまく機能します。スクロールされる要素は、ドキュメントの残りの部分に対して「視差」します。つまり、ドキュメントの残りの部分の約 2 倍の速さでスクロールします。

これは jQuery の計算に問題があることはわかっていますが、これに遭遇したことがある人がいるかどうか疑問に思っていましたか? もしそうなら、どのようにそれに取り組みましたか?私は少し途方に暮れています....

編集

問題は解決しました - コードが $(window).scrollLeft(); を使用していたためです。操作したかった要素のスコープ内の親要素の代わりに。

ラッパー div は「wrapperDiv」として分類されていたので、$(".wrapperDiv").scrollLeft(); を使用しました。

この質問を確認済みとしてマークしますが、私は Stack Overflow を初めて使用するため、さらに 7 時間回答することはできません....

4

1 に答える 1