「MediaWiki:Mobile.js」の版間の差分

編集の要約なし
編集の要約なし
タグ: 差し戻し済み モバイル編集 モバイルウェブ編集
編集の要約なし
タグ: 差し戻し済み モバイル編集 モバイルウェブ編集
49行目: 49行目:
/*メニューバー*/
/*メニューバー*/
document.addEventListener("DOMContentLoaded", function() {
document.addEventListener("DOMContentLoaded", function() {
     var lastScrollTop = 0; // 最後のスクロール位置を保持する変数
     // 初期状態ではmobileMenuBarを非表示に設定
     var mobileMenuBar = document.getElementById('mobileMenuBar'); // mobileMenuBar要素を取得
     var mobileMenuBar = document.getElementById('mobileMenuBar');
    mobileMenuBar.style.display = 'none';


     window.addEventListener("scroll", function() {
    // スクロールイベントリスナー
         var currentScroll = window.pageYOffset || document.documentElement.scrollTop;
     window.addEventListener('scroll', function() {
         if (currentScroll > lastScrollTop) {
        // ページの最上部からのスクロール距離を取得
             // 下にスクロールした時、mobileMenuBarを表示
         var scrollDistance = window.scrollY;
 
         if (scrollDistance > 100) {
             // 100px以上スクロールした場合、mobileMenuBarを表示
             mobileMenuBar.style.display = 'block';
             mobileMenuBar.style.display = 'block';
         } else {
         } else {
             // 上にスクロールした時、mobileMenuBarを非表示にする
             // 100px未満に戻った場合、mobileMenuBarを非表示
             // ただし、ページの最上部にいる場合は表示しない
             mobileMenuBar.style.display = 'none';
            if (currentScroll <= 0) {
                mobileMenuBar.style.display = 'none';
            }
         }
         }
        lastScrollTop = currentScroll <= 0 ? 0 : currentScroll; // 負の値を防ぐ
     });
     }, false);
});
});