我的母版页中有以下选项卡式导航设置。
<nav class="grid_12">
<ul>
<li><a href="#" class="selected">Home</a></li>
<li><a href="#">Portfolio</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
例如,当我单击"投资组合"选项卡时,我希望"投资组合"选项卡在登陆投资组合页面时保持突出显示。实现此目的的推荐方法是什么?
我已经检查了其他一些帖子,但其中最相关的帖子在示例中使用div 而不是单独的页面。
假设您拥有的"选定"类名具有您正在谈论的突出显示的样式。用户单击其中一个链接后,使用 jquery 可以将"selected"类添加到单击的锚标记中。把它放在页面底部的结束正文标签之前或你的主 JavaScript 文件中。
<script type="text/javascript">
$(document).ready(function () {
$(".grid_12 ul li a").click(function() {
$(".grid_12 ul li a ").removeClass("selected");
$(this).addClass("selected")
})
})
</script>
上面的代码只有在没有页面刷新而只有内容刷新的情况下才有效,但是如果您的页面将刷新并转到新页面,我会做这样的事情:
<nav class="grid_12">
<ul>
<li><a href="#" class="nav_home">Home</a></li>
<li><a href="#" class="nav_portfolio">Portfolio</a></li>
<li><a href="#" class="nav_blog">Blog</a></li>
<li><a href="#" class="nav_contact">Contact</a></li>
</ul>
</nav>
,然后添加特定页面的样式。例如,当您在 css 中仅针对投资组合 www.mySite.com/portfolio 时,请添加:
a.nav_portfolio{
background-color:orage;
...
}
这样你甚至不需要做任何javascript。