【发布时间】:2011-07-19 02:43:25
【问题描述】:
有许多教程向您展示了如何通过从 url 中获取 # 在导航栏中创建活动标签效果。
如果您链接到同一个页面,这很好,但如果您的所有链接都在不同的页面上怎么办。有没有办法使用 Jquery 来获取 url 并使选项卡处于活动状态?
以下示例为特定选项卡提供了一个“活动”类:
var tabs = $('ul.tabs');
tabs.each(function(i) {
//Get all tabs
var tab = $(this).find('> li > a');
tab.click(function(e) {
//Get Location of tab's content
var contentLocation = $(this).attr('href') + "Tab";
//Let go if not a hashed one
if(contentLocation.charAt(0)=="#") {
e.preventDefault();
//Make Tab Active
tab.removeClass('active');
$(this).addClass('active');
//Show Tab Content & add active class
$(contentLocation).show().addClass('active').siblings().hide().removeClass('active');
}
});
如何修改它以使用指向我网站中其他页面的链接?这是html:
<ul id="nav" class="tabs">
<li><a href="/" title="Home" class="active">Home</a></li>
<li><a href="/about/" title="About us">About</a></li>
<li><a href="/demo/" title="Demo">Demo</a></li>
<li><a href="/where/" class="dir" title="Where">Where</a></li>
<li><a href="/contact/" class="dir" title="Contact Us">Contact Us</a></li>
</ul>
上面的 jquery 仅适用于#tab1、#tab2 等,如何根据当前页面名称激活选项卡?抱歉,如果这有点不清楚,很难解释!
【问题讨论】:
标签: javascript jquery css navigation