最初に、私はあなたが必要とするかもしれない何かを逃しているなら、そしてある種の漠然とした質問のために、私は非難します。私は拘束されており、解決策を見つけるために数週間最善を尽くしてきました。
タブ選択コードである次のコードがあります。私はjqueryをあまり知らず、基本を理解するのに十分なJavaScriptしか知りません。以下のすべてのコードを本当に理解しているわけではありませんが、タブをクリックしてページを最初にロードしたときに何が起こるかを制御していることはわかります。正しい?
目標は、別のサイトからのリンクを提供し、Tab_2またはTab_3をアクティブにできるようにすることです。現在、最初のタブ(Tab_1)は、サイトにアクセスするときに常にアクティブなタブです。ページの読み込み時に別のタブのコンテンツを表示し、各タブをクリックして変更できるようにするユーザーが必要です。
jqueryの第一人者がそこにいるので、これがうまくいくことを願っています。
これがタブを処理するjqueryです。
//Add to Global JS File
$(document).ready(function() {
initTabbedHomeContent();
});
function initTabbedHomeContent() {
var tabsPanel = $('.home');
if (tabsPanel.length > 0) {
var tabTitles = "";
$.each($('.tab_container .tab'), function(i) {
//var tabid = 'tab' + i
//$(this).attr('id', 'tab' + i);
var tabid = $(this).find('h2').eq(0).text()
var tabid = tabid.replace(/\s+/g,'_')
$(this).attr('id', tabid);
$(this).addClass("tabsActive");
//tabTitles += '<li><a href="#tab' + i + '"><span>' + $(this).find('h2').eq(0).text() + '</span></a></li>';
tabTitles += '<li><a href="#' + tabid + '"><span>' + $(this).find('h2').eq(0).text() + '</span></a></li>';
});
$('.tab_container').prepend('<ul class="tabs">' + tabTitles + '</ul>');
$(".tab_container .tab, .tab_container .tab h2").hide();
$("ul.tabs li:first").addClass("first");
//This chooses the first item when nothing else is selected.
$("ul.tabs li:first").addClass("active").show();
$(".tab_container .tab:first").show();
//ON Click Event
$("ul.tabs li").unbind().click(function() {
$("ul.tabs li").removeClass("active");
$(this).addClass("active");
$(".tab_container > .tab").hide();
var activeTab = $(this).find("a").attr("hash");
$(activeTab).show();
return false;
});
$(document).ready(function() {
var activeTab = location.href;
var activeTabId = activeTab.substring(activeTab.lastIndexOf('#')+1);
var activeTab = $(activeTabId).prev('li');
//$(activeTab).addClass("active");
//alert($(activeTabId));
//alert($(activeTab).html());
return false;
});
}
これがhtmlの部分です。
<body class="home">
<div class="heading">
<br/><br/><br/><br/><br/><br/><br/>
bla bla bla heading text goes here.
<br/><br/><br/><br/><br/><br/><br/>
</div>
<div class="tab_container">
<div class="tab">
<div class="sp3column">
<h2>Tab 1</h2>
bla bla bla Tab 1 text goes here.
</div>
</div>
<div class="tab">
<div class="sp3column">
<h2>Tab 2</h2>
bla bla bla Tab 2 text goes here.
</div>
</div>
<div class="tab">
<div class="sp3column">
<h2>Tab 3</h2> <!-- tab title -->
bla bla bla Tab 3 te xt goes here.
</div>
</div>
</div>
</body>