У меня есть несколько настроек вкладок;вот что они в настоящее время делают:
- скрытие контента при открытии страницы
- показ контента при нажатии на вкладку (с переключателем, чтобы пользователь мог показать / скрыть / показать / скрыть контент)
- активная вкладка меняет цвет при выборе
Проблема: когда пользователь нажимает на одну из вкладок и показывает содержимое, а затем нажимает на другой вкладке, оба набора содержимого показывают(как совокупный переключатель).
Я хочу настроить его так, чтобы, если пользователь щелкает вкладку и показывает содержимое, а затем нажимает другую вкладку, содержимое, отображаемое для первой нажатой вкладки, будет скрыто.
Вот еще один SO вопрос, который касается чего-то подобного, но он не включает в себя код активного класса, который у меня есть - Работа с несколькими переключателями и 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>