ページの下部にある「上部へ」の小さな固定ボタンを作成する必要があります。ページ上のコンテナの 1 つを基準にする必要があるため、jquery を使用して座標を計算しようとしています。これが私のコードです:
$(document).ready(function() {
var button = $('.button-up');
var left = parseInt(button.css('left'));
$(window).scroll(function(event) {
if ($(window).scrollLeft() > 0){
var scroll = $(this).scrollLeft();
var leftNew = left - scroll;
console.log('scrollleft:', scroll, ' left: ', left, ' left\':', leftNew);
button.css('left', leftNew + "px");
}
});
});
スクロールバーをゆっくり動かすとうまくいきます。しかし、私がすぐにそれを行うと、 scrollLeft() は適切に再計算されません。したがって、バーが左側にあり、console.log で 50px と表示される状況が可能です。それが起こると、私のボタンは左に行き、コンテンツ領域を覆います。どうにかしてこの影響を防ぐことはできますか? JS から scrollX を使用して $(this) を window に変更しようとしましたが、同じ効果があります