これについてはjsの助けが必要です。1ページに2つのナビゲーション、片側のナビゲーションと1つの上部のナビゲーションが連携して動作します。クリックして選択すると、サイドナビゲーションのアクティブ状態とトップナビゲーションの現在の状態が強調表示されますが、2番目と3番目のトップナビゲーションリンクをクリックすると、サイドナビゲーションのアクティブ/選択状態が削除されます。
HTMLは次のとおりです。
<div id="nav">
<ul>
<li class="active"><a href="#SideNav1">Side Nav 1</a></li>
<li><a href="#SideNav2">Side Nav 2</a></li>
</ul><br />
<div id="SideNav1">
<ul>
<li class="current">Side Nav 1 Top Nav 1</li>
<p>Content here</p> <br />
<li><a href="#SideNav1TopNav2">Side Nav 1 Top Nav 2</a></li>
<p>Content here</p> <br />
<li><a href="#SideNav1TopNav3">Side Nav 1 Top Nav 3</a></li>
<p>Content here</p> <br />
</ul>
</div>
<div id="SideNav2">
<ul>
<li class="current">Side Nav 2 Top Nav 2</li>
<p>Content here</p> <br />
<li><a href="#SideNav2TopNav2">Side Nav 2 Top Nav 2</a></li>
<p>Content here</p> <br />
<li><a href="#SideNav3TopNav3">Side Nav 2 Top Nav 3</a></li>
<p>Content here</p> <br />
</ul>
</div>
<div id="SideNav1TopNav2">
<ul>
<li><a href="#SideNav1">Side Nav 1 Top Nav 1</a></li>
<p>Content here</p> <br />
<li class="current">Side Nav 1 Top Nav 2</li>
<p>Content here</p> <br />
<li><a href="#SideNav1TopNav3">Side Nav 1 Top Nav 3</a></li>
<p>Content here</p> <br />
</ul>
</div>
<div id="SideNav1TopNav3">
<ul>
<li><a href="#SideNav1">Side Nav 1 Top Nav 1</a></li>
<p>Content here</p> <br />
<li><a href="#SideNav1TopNav3">Side Nav 1 Top Nav 2</a></li>
<p>Content here</p> <br />
<li class="current">Side Nav 1 Top Nav 3</li>
<p>Content here</p> <br />
</ul>
</div>
<div id="SideNav2TopNav2">
<ul>
<li><a href="#SideNav2">Side Nav 2 Top Nav 1</a></li>
<p>Content here</p> <br />
<li class="current">Side Nav 2 Top Nav 2</li>
<p>Content here</p> <br />
<li><a href="#SideNav2TopNav3">Side Nav 2 Top Nav 3</a></li>
<p>Content here</p> <br />
</ul>
</div>
<div id="SideNav2TopNav3">
<ul>
<li><a href="#SideNav2">Side Nav 2 Top Nav 1</a></li>
<p>Content here</p> <br />
<li><a href="#SideNav2TopNav3">Side Nav 2 Top Nav 2</a></li>
<p>Content here</p> <br />
<li class="current">Side Nav 2 Top Nav 3</li>
<p>Content here</p> <br />
</ul>
</div>
</div>
これがjsです:
$(function() {
$('#nav div').hide();
$('#nav div:first').show();
$('#nav ul li:first').addClass('active');
$('#nav ul li a').click(function(){
var currentTab = $(this).attr('href');
var vis = $(currentTab).is(':visible');
$('#nav div').hide();
$('#nav ul li').removeClass('active');
$(this).parent().addClass('active');
if(vis) {
$(currentTab).hide();
} else {
$(currentTab).show();
}
});
});
そしてCSS:
.active {
background:#008CDC;
}
.current {
background:#ECEDED;
}
ここの動的コード: