Javascript 一个页面上有多个jQuery选项卡。。。?
我所要做的就是在同一个页面上有多个选项卡区域,并使用JS中的一个类来处理它们。我不想手动向JS添加单独的ID来激活选项卡 这是一把小提琴: 这是我的密码: HTMLJavascript 一个页面上有多个jQuery选项卡。。。?,javascript,jquery,tabs,Javascript,Jquery,Tabs,我所要做的就是在同一个页面上有多个选项卡区域,并使用JS中的一个类来处理它们。我不想手动向JS添加单独的ID来激活选项卡 这是一把小提琴: 这是我的密码: HTML 您在为第二个选项卡提供href值时犯了一个小错误,它应该是tab1b和tab2b <header> <h1 class="widget-title">Popular Articles 2</h1> <a href="#" class="more">More</a
您在为第二个选项卡提供
href
值时犯了一个小错误,它应该是tab1b
和tab2b
<header>
<h1 class="widget-title">Popular Articles 2</h1>
<a href="#" class="more">More</a>
<ul class="tab-nav">
<li class="active"><a href="#tab1b">Read</a></li>
<li><a href="#tab2b">Emailed</a></li>
</ul>
</header>
流行文章2
演示:您在为第二个选项卡提供
href
值时犯了一个小错误,它应该是tab1b
和tab2b
<header>
<h1 class="widget-title">Popular Articles 2</h1>
<a href="#" class="more">More</a>
<ul class="tab-nav">
<li class="active"><a href="#tab1b">Read</a></li>
<li><a href="#tab2b">Emailed</a></li>
</ul>
</header>
流行文章2
演示:假设链接和选项卡的顺序相同,因为此代码使用单击的标题索引来确定要显示的选项卡索引:
$('.tab-nav li a').click(function(){
var that = $(this); //cache when you can
var tabIndex = that.parent().index();
var tabs = that.parents('aside').find('.tab');
that.parent('li').siblings().removeClass('active');
that.parent('li').addClass('active');
tabs.removeClass('active');
tabs.eq(tabIndex).addClass('active');
return false;
});
或者,您可以运行一些javascript来预先提供与ID匹配的所有选项卡和标题,或者只使用外部库,如jQuery UI选项卡。假设链接和选项卡的顺序相同,因为此代码使用单击的标题索引来确定要显示的选项卡索引:
$('.tab-nav li a').click(function(){
var that = $(this); //cache when you can
var tabIndex = that.parent().index();
var tabs = that.parents('aside').find('.tab');
that.parent('li').siblings().removeClass('active');
that.parent('li').addClass('active');
tabs.removeClass('active');
tabs.eq(tabIndex).addClass('active');
return false;
});
或者,您可以运行一些javascript,预先提供与ID匹配的所有选项卡和标题,或者只使用外部库,如jQuery UI选项卡。对不起,现在应该可以了,只要选项卡组位于单独的旁侧标记中。删除所有id,只要选项卡标题和选项卡内容div的顺序相同,一切都可以正常工作——此代码使用单击的标题索引来确定要显示的选项卡的索引。这似乎很有效!非常感谢您抽出时间。我正在努力升级我的JS,但在此期间,我还必须工作。:)令人惊叹的。祝你在未来的编码工作中好运!是的,大部分是这样。仍在阅读
.index()
,这似乎是使多个实例工作的关键。抱歉,现在它应该可以工作了,只要选项卡组位于单独的旁侧标记中。删除所有id,只要选项卡标题和选项卡内容div的顺序相同,一切都可以正常工作——此代码使用单击的标题索引来确定要显示的选项卡的索引。这似乎很有效!非常感谢您抽出时间。我正在努力升级我的JS,但在此期间,我还必须工作。:)令人惊叹的。祝你在未来的编码工作中好运!是的,大部分是这样。仍在阅读.index()
,这似乎是使多个实例工作的关键。请原谅我的无知,但您实际上发现比您遇到麻烦的代码更复杂和烦人?是的,如果可以,只需使用已经实现的tabs版本。实际上,我确实更喜欢为像这样简单的东西包含另一个库。另外,我正在努力学习这一切是如何运作的。请原谅我的无知,但你实际上发现比这段代码更复杂、更烦人?是的,如果可以的话,就使用已经实现的tabs版本。事实上,我更喜欢为像这样简单的事情包含另一个库。另外,我正在努力学习这一切是如何运作的。