JavaScriptについて質問です。
https://techmemo.biz/javascript/tab-direct-link/
こちらのソースを参考に、「リンク元にハッシュを追加して特定のタブコンテンツを開く方法」を試しているのですがうまくいきません。。
通常開いた時は紹介した方のページが開くが、他ページからアクセスした際に、紹介された方のほうのタブに飛ばしたいのです。
下記に実装したいのですが、どこか可笑しい部分ありますでしょうか?
おわかりの方ぜひご享受ください🙇
$(function() { $('.tabs a[href^="#tab_content_at"]').click(function(){ $('.tabs .tab_content_at').hide(); $('.tabs a').removeClass('active'); $(this).toggleClass('active'); $(this.hash).fadeIn(); return false; }); $('.tabs a[href^="#tab_content_at"]:eq(0)').trigger('click'); }); $(function() { //リンクからハッシュを取得 var hash = location.hash; hash = (hash.match(/^#tab\d+$/) || [])[0]; //リンクにハッシュが入っていればtabnameに格納 if($(hash).length){ var tabname = hash.slice(1) ; } else{ var tabname = "keiba"; } //コンテンツ非表示&タブを非アクティブ $('.tabs .tab_item_kb').hide(); $('.tabs a').removeClass('active'); //何番目のタブかを格納 var tabno = $('.tabs li#' + tabname).index(); //コンテンツ表示 $('.tabs .tab_item_kb').eq(tabno).fadeIn(); //タブのアクティブ化 $('.tabs a').eq(tabno).addClass('active'); });
<body>
紹介した方 紹介された方 左タブ内のページ 右タブ内のページ
</body>
0 コメント