前提・実現したいこと
ナビメニューのリストのうち現在のページの部分だけクラスを付与し、リンク部分の色を変更するなどの処理をしたいです。
いろいろと調べてある程度は出来たのですが、フロントページにクラスが残り続けてしまいます。
該当のソースコード
html
1<nav> 2 <ul> 3 <li> <a href="http://○○○/">HOME</a> </li> 4 <li> <a href="http://○○○/aaa/">AAA</a> </li> 5 <li> <a href="http://○○○/bbb/">BBB</a> </li> 6 <li> <a href="http://○○○/ccc/">CCC</a> </li> 7 </ul> 8</nav>
試したこと
js
1$('nav li a').each(function(){ 2 var $href = $(this).attr('href'); 3 if(location.href.match($href)) { 4 $(this).parent('li').addClass('active'); 5 } else { 6 $(this).parent('li').removeClass('active'); 7 } 8 });
発生している問題・エラーメッセージ
「AAA」や「BBB」などのページにいるときはそれぞれ該当部分にclass="active"が付与されますが、それとは別に「HOME」にも常時class="active"がついた状態になっています。
補足情報(FW/ツールのバージョンなど)
wordpress v5.1.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/25 06:11