前提・実現したいこと
他のページから該当のタブのリンクに飛んできた際に
該当のタブが切り替わるようにしたいです。
タブ切り替え自体に使用しているのはtabsletになります。
https://vdw.github.io/Tabslet/
JavaScript・jQueryは初心者なため、解決にご助力いただけますと幸いです。
該当のソースコード
【html】 <div class="tab__wrap"> <div class="tabs tab__container"> <ul class="horizontal"> <li class="tab__item"><a href="#tab-1">タブ1</a></li> <li class="tab__item"><a href="#tab-2">タブ2</a></li> <li class="tab__item"><a href="#tab-3">タブ3</a></li> </ul> <div class="tab__content" id="tab-1"> <div class="tab__desc"> <p class="c-txtsp">テキストテキストテキストテキストテキストテキスト</p> </div> </div> <div class="tab__content" id="tab-2"> <div class="tab__desc"> <p class="c-txtsp">テキストテキストテキストテキストテキストテキスト</p> </div> </div> <div class="tab__content" id="tab-3"> <div class="tab__desc"> <p class="c-txtsp">テキストテキストテキストテキストテキストテキスト</p> </div> </div> </div> </div>
試したこと
下記、参考サイト(https://techmemo.biz/javascript/tab-direct-link/)を元に記述しています。
【JavaScript】 var hash = location.hash; hash = (hash.match(/^#tab-\d+$/) || [])[0]; if($(hash).length){ var tabname = hash.slice(1) ; } else{ var tabname = "tab-1"; } $('.tab__content').hide(); $('.tab__item').removeClass('active'); var tabno = $('.tab__item#' + tabname).index(); $('.tab__content').eq(tabno).fadeIn(); $('.tab__item').eq(tabno).addClass('active');
発生している問題・エラーメッセージ
現時点で、デベロッパーツールのconsoleを確認してもエラーは確認できませんでしたが
tab-3のみ、他のページから飛んできた際に機能しています。
何も指定していない場合はtab-1がactiveになっています。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。