このサイトで複数の回答を調べましたが、何らかの理由で問題を解決できませんでした ( JQuery でアンカー タグを使用して他のページから特定のタブを選択する方法..? )。これはローカル コンピューターでのみテストしているため、影響があるかどうかはわかりません。
現在のページだけでなく、他のページからも各タブにリンクしたい。現在、各タブをクリックすることができ、完全に機能し、サイトの URL が変更されます (#tab1、#tab2 など)。
ただし、たとえば、タブ 2 が表示されているときにタブ 1 のリンク (実際のタブではなく、タブ 1 を対象とするページ上のリンク) をクリックすると、何も起こりませんが、URL は /site.html#tab1 に変更されます。 . ただし、タブ 1 が表示されているときにタブ 1 のリンクをクリックすると、タブ 1 に移動します。タブが非表示になっているため、何か問題が発生しています。リンクは、現在表示されているタブに対してのみ機能します。少なくともページ内で機能させることができれば、ページ外のリンクからも機能させることができると思います。
基本的に、誰かにリンクを送信してそのタブに移動できるようにしたいと考え/site.html#tab3
ています。
私のコード:
$(document).ready(function() {
//Default Action
$(".tab_content").hide(); //Hide all content
$("ul.tabs li:first").addClass("active").show(); //Activate first tab
$(".tab_content:first").show(); //Show first tab content
//On Click Event
$("ul.tabs li").click(function() {
$("ul.tabs li").removeClass("active"); //Remove any "active" class
$(this).addClass("active"); //Add "active" class to selected tab
$(".tab_content").hide(); //Hide all tab content
var activeTab = $(this).find("a").attr("href"); //Find the rel attribute value to identify the active tab + content
$(activeTab).fadeIn(); //Fade in the active content
return;
});
});
と:
$(document).ready(function () {
var tabId = window.location.hash; // will look something like "#h-02"
$(tabId).click(); // after you've bound your click listener
});
そしてタブ:
<ul class="tabs">
<li><a href="#tab1">Ex 1</a></li>
<li><a href="#tab2">Ex 2</a></li>
<li><a href="#tab3">Ex 3</a></li>
<li><a href="#tab4">Ex 4</a></li>
タブのコンテンツの例と、ページ上のタブへのリンク:
//tab content
<div class="tab_container">
<div id="tab1" class="tab_content">
<h2>Ex 1</h2>
//Link to Tab 1 from right menu
<ul><li>
<a href="#tab1">Click here to go to tab 1</a></li></ul>
ありがとうございました!!