JSでわからないことがありましたので、質問させていただきます。
現在、ヘッダー固定のページ内スムーススクロールのサイト(以下、トップページと呼ぶ)を制作しているのですが、他のページも設けることになりました。
他のページからトップページの該当箇所に遷移する時にヘッダーのナビもアクティブにしたいのですが、その処理ができないでおります。
TOPページのみだけなら、ナビをアクティブにできるのですが、他のページから遷移した時のみアクティブになりません。
ソースコードを添付させていただきますので、どうやったら解決できるか、また同様の記事が書いてある参考サイトなどございましたら教えていただきたいです。
JSの詳しいかたご協力のほど、何卒よろしくお願い致します。
デモページ
URL削除しました。ご協力ありがとうございました!
▼▼▼▼▼HTML▼▼▼▼▼
<header> <div class="inner clearfix"> <h1><a href="./"><img src="assets/images/logo.png"></a></h1> <nav> <ul class="clearfix"> <li><a href="#HOME" class="btn_act active">HOME</a></li> <li><a href="#value" class="btn_act">VALUE</a></li> <li><a href="#service" class="btn_act">SERVICE</a></li> <li><a href="#data" class="btn_act">DATA</a></li> <li><a href="#voice" class="btn_act">VOICE</a></li> <li><a href="#message" class="btn_act">MESSAGE</a></li> <li><a href="#entry" class="btn_act">ENTRY</a></li> </ul> </nav> </div> </header> <!-- /header --> <div id="value" class="block"> 省略 </div> <div id="service" class="block"> 省略 </div> <div id="data" class="block"> 省略 </div> <div id="voice" class="block"> 省略 </div> <div id="message" class="block"> 省略 </div> <div id="entry" class="block"> 省略 </div>
▼▼▼▼▼JS▼▼▼▼▼
$(function(){ $("nav li a.btn_act").click(function(){ var connectCont = $("nav li a.btn_act").index(this); var showCont = connectCont+1; $('nav li a').removeClass('active'); $(this).addClass('active'); }); });
▼▼▼▼▼CSS▼▼▼▼▼
.active { text-decoration: underline; }
回答3件
あなたの回答
tips
プレビュー