【发布时间】:2012-01-03 23:49:16
【问题描述】:
我已经设置了一些标签;这是他们目前所做的:
- 打开页面时隐藏内容
- 在标签点击时显示内容(使用切换开关,用户可以显示/隐藏/显示/隐藏内容)
- 选中时活动选项卡会改变颜色
问题:当用户单击其中一个选项卡并显示内容,然后单击另一个选项卡时,两组内容都会显示(如累积切换)。
我想设置它,如果用户单击一个选项卡并显示内容,然后单击另一个选项卡,则单击的第一个选项卡显示的内容将隐藏。
这是另一个处理类似问题的 SO 问题,但它不包括我拥有的活动类代码 - Dealing with multiple toggles 和有效的 JS - http://jsfiddle.net/jHvjD/5/
JQUERY
$(document).ready(function(){
$('.tab_contents').hide();
$('.tab').click(function() {
$(this.rel).toggle();
$('#tabs_container > .tabs > li.active')
.removeClass('active');
$(this).parent().addClass('active');
$('#tabs_container > .tab_contents_container > div.tab_contents_active')
.removeClass('tab_contents_active');
$(this.rel).addClass('tab_contents_active');
});
});
HTML
<div id="tabs_container">
<!-- These are the tabs -->
<ul class="tabs">
<li>
<a href="#" rel="#tab_1_contents" class="tab">Option 1</a>
</li>
<li><a href="#" rel="#tab_2_contents" class="tab">Option 2</a></li>
</ul>
<div class="clear"></div>
<div class="tab_contents_container">
<!-- Tab 1 Contents -->
<div id="tab_1_contents" class="tab_contents tab_contents_active">Option 1 stuff </div>
<!-- Tab 2 Contents -->
<div id="tab_2_contents" class="tab_contents">Option 2 stuff</div>
</div>
【问题讨论】:
-
您是在尝试使用
active使元素可见还是实际切换显示? -
使用jquery UI Tabs怎么样?
-
@JaredPar - 活动类突出显示正在使用的选项卡,单击时实际上会切换内容。
-
@JMax - 这不能解决问题;我已经在使用 jquery;我需要知道如何切换切换以应用于多个选择器
-
@JMax - 意思是我认为 UI 库没有给我任何更简单的解决方案