Note: I want to use .tabs() and avoid NOT using .tabs(), and writing everything
separately to handle the fades and tab selections like others have found.
タイトルが示すように、ページの2 つの別々の位置にタブのリストを表示したいのですが、それらを同じデータで連携させたいと考えています。
問題は、クラスで 2 つの ul を設定するnav
と競合が発生し、一度に 2 つのタブ (左側と右側) を選択できることです。
各タブ セットが連動しておらず、個別に選択できることがわかりますか?
機能する単一のタブ セットのコード
HTML
<div id="content">
<!-- Tab data gets inserted here -->
<div id="overlay"><div class="overlay"></div></div>
<!-- First Tab Set -->
<!-- NOTE: This will appear on the left -->
<div class="navigation nav-left">
<ul class="nav">
<li>Link1</li>
<li>Link2</li>
</ul>
</div>
<!-- Data for the tabs - this works! -->
<div id="container">
<!-- Link 1 Tab -->
<div>This is data for Link 1</div>
<div>This is data for Link 2</div>
</div>
</div>
jQuery
$(function() {
$("ul.nav").tabs("div#container > div", {
effect: 'fade',
fadeOutSpeed: "500"});
});
ご覧のとおり、上記の jQuery は、ul.nav
各 div に#container
個別にリンクするためのタブを設定します。ページの左側にあるこの 1 つのタブ セットで機能します。
難しい部分
これを変更して、ページに2セットのタブを許可するにはどうすればよいですか?
ちょっと待ってください<div class="navigation nav-right">
--これらのタブをページの右側に保持するnav-right に注意してください。
この 2 番目のタブのセットは、最初のセットと一緒に機能する必要があるため、一度にアクティブにできるタブは 1 つだけであり、他のタブの選択をキャンセルします。
私のコードが2つのタブセットの同時実行の問題を引き起こしている
HTML
<!-- First Tab Set -->
<!-- NOTE: This will appear on the left -->
<div class="navigation nav-left">
<ul class="nav">
<li>Link1</li>
<li>Link2</li>
</ul>
</div>
<!-- Second Tab Set (Attempt) -->
<!-- NOTE: I want nav-right here -->
<div class="navigation nav-right">
<ul class="nav">
<li>Link1</li>
<li>Link2</li>
</ul>
</div>
<!-- Data for the tabs -->
<div id="container">
<!-- Link 1 Tab -->
<div>This is data for Link 1</div>
<div>This is data for Link 2</div>
. . .
<div>This is data for Link 5</div>
</div>
最終的な考え
私はむしろ、独自の jQuery Tabs 関数をfadeIn()
andで記述する必要がないことを望んでいましたfadeOut()
- これを機能させるにはどうすればよいですか?