スクロール中に固定 Div の水平位置を修正するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-01 22:28:02
オリジナル
517 人が閲覧しました

How to Fix a Fixed Div's Horizontal Position During Scrolling?

固定位置 Div の水平スクロール

このクエリでは、ユーザーは固定位置 Div が水平にスクロールされるときにコンテンツの衝突を防ぐ解決策を探します。他のコンテンツと一緒に。 jQuery を使用した最初の実装では、垂直方向の div は正常に修正されましたが、水平スクロールはサポートされていません。

提案された解決策には、要素の left プロパティを操作するために jQuery コードを変更することが含まれます:

var leftInit = $(".scroll_fixed").offset().left;
var top = $('.scroll_fixed').offset().top - parseFloat($('.scroll_fixed').css('margin-top').replace(/auto/, 0));


$(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
    });

});
ログイン後にコピー

説明

  1. leftInit は、div の初期左オフセットを保存します。
  2. スクロール時、x 値は現在のスクロール オフセットの負の値として設定されます。
  3. leftInit は、div の左マージンが適切に考慮されることを保証します。

このアプローチでは、div の固定位置を維持しながら、それを許可します。コンテンツに沿って水平にスクロールして、衝突を防ぎ、ユーザー エクスペリエンスを向上させます。

以上がスクロール中に固定 Div の水平位置を修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!