以下にリストされているヘッダー ナビゲーションがあり、に追加されたクラスがli
アイコンを作成します。
下にスクロールすると、クラスを完全に削除できるようになり、ページの上部にスクロールして戻ると、どのクラスがどのアイテムに属しているかを確認して、同じクラスを元に戻すことができるようになります。
おそらくそれらを変数に格納する必要があると考えています。これらのメニュー項目は動的であり、削除すると変更される可能性があることに注意してください。
HTML
<ul id="menu-left-main-nav" class="main-left-nav nav-bar hide-for-small">
<li id="menu-item-37" class="customicon-shop"><a href="http://localhost:8888/shop/">Shop</a></li>
<li id="menu-item-35" class="customicon-contact"><a href="http://localhost:8888/account/">Account</a></li>
<li id="menu-item-36" class="customicon-apps"><a href="http://localhost:8888/apps-entertainment/">Apps & Entertainment</a></li>
</ul>
<ul id="menu-right-main-nav" class="main-right-nav nav-bar hide-for-small">
<li id="menu-item-61" class="customicon-about"><a href="http://localhost:8888/about/">About</a></li>
<li id="menu-item-62" class="customicon-support"><a href="http://localhost:8888/support/">Support</a></li>
<li id="menu-item-63" class="customicon-why"><a href="http://localhost:8888/why/">Why?</a></li>
</ul>
jQuery
var nav = $(".nav");
var pos = nav.position();
$(window).scroll(function() {
var windowpos = $(window).scrollTop();
if (windowpos >= pos.top) {
nav.css({
'position': 'fixed'
}).addClass("sticky");
} else {
nav.css({
'position': 'relative'
}).removeClass("sticky");
}
});
コードを見ると、ID は動的ですが、クラスはそうではありません。