У меня есть следующий компонент вкладок:
<a data-tab="tab-1" class="button active">Tab 1</a>
<a data-tab="tab-2" class="button">Tab 2</a>
<a data-tab="tab-3" class="button">Tab 3</a>
<div class="tab-content active" id="tab-1">Tab 1 content</div>
<div class="tab-content" id="tab-2">Tab 2 content</div>
<div class="tab-content" id="tab-3">Tab 3 content</div>
А под ним у меня есть меню выбора:
<select>
<option>Please select</option>
<option value="tab-1">Tab 1</option>
<option value="tab-2">Tab 2</option>
<option value="tab-3">Tab 3</option>
</select>
Когда вы нажимаете на вкладках, изменяется соответствующая опция меню выбора. То, чего я сейчас пытаюсь добиться, - это добавить активный класс к кнопкам вкладок, когда выбран соответствующий параметр меню выбора, и, очевидно, удалить этот класс из предыдущей кнопки вкладок.
Это JS:
$('.button').click(function(){
var tab_id = $(this).attr('data-tab');
$('.button').removeClass('active');
$('.tab-content').removeClass('active');
$(this).addClass('active');
$("#" + tab_id).addClass('active');
$('select').val($(this).data('tab')).change();
})
$("select").change(function () {
$('.tab-content').removeClass('active');
$('#' + $(this).val()).addClass('active');
});
Я пытался добавить $('.button').addClass('active');
примерно так:
$("select").change(function () {
$('.tab-content').removeClass('active');
$('#' + $(this).val()).addClass('active');
$('.button').addClass('active');
});
Однако это добавляет активный класс к каждая кнопка вкладки выбрана из меню выбора.
Пожалуйста, посмотрите Демо здесь
Спасибо за вашу помощь.