1
のための機能をリセットし、私は画面< 768px応答
スクリプト
function hasScrolled() {
if($(window).width() > 768) {
var st = $(this).scrollTop();
if (Math.abs(lastScrollTop - st) <= delta)
return;
if (st > lastScrollTop && st > navbarHeight) {
// Scroll Down
$('#s-nav').removeClass('nav-down').addClass('nav-up');
} else {
// Scroll Up
if (st + $(window).height() < $(document).height()) {
$('#s-nav').removeClass('nav-up').addClass('nav-down');
}
}
lastScrollTop = st;
}
}
HTML
を除いてイベントをスクロールに基づいて.navアップと.navダウンを削除/追加し、次のコードを持っています<nav id="s-nav" class="nav-down"> .... </div>
CSS
#s-nav { position: fixed; }
#s-nav.nav-up { top: -75px; }
@media screen and (max-width: 768px) {
#s-nav.nav-up { top: 0; }
}
しかし、モバイルから画面サイズ(応答性)の画面サイジングに移行すると、ウィンドウがスクロールしたようにメニューが「上に行く」ようになります。私はそれが画面サイズだとき、私は
確かにどのように、しかし問題解決!ありがとうございます – user3550879
これは、ウィンドウが768よりも小さい場合、#s-navは 'nav-down'クラスを取ります。サイズを変更すると、まだこのクラスがあるので、上がらないためです。それが明確かどうかわからない;) – shwarp