[jquery] Как присвоить класс потомкам у разных родителей?

Staid
На сайте с 30.07.2014
Offline
59
434

Не могу сразу в нескольких селекторах изменить класс дочерних элементов. К примеру есть несложный скрипт табов:


$('.tabs-nav div).click(function () {
if (!($(this).hasClass('active'))) {
var thisLi = $(this);
var numLi = thisLi.index();
thisLi.addClass('active').siblings().removeClass('active');
$('.tabs-content').children('div.tab').removeClass('active').eq(numLi).addClass('active');
}
});


<!-- Навигация для табов -->
<div class="nav-tabs">
<div class="active">Раз</div>
<div>Два</div>
<div>Три</div>
</div>

<!-- Контейнер с табами -->
<div class="tabs-content">
<div class="tab active">1</div>
<div class="tab">2</div>
<div class="tab">3</div>
</div>

<!-- Контейнер с табами -->
<div class="tabs-content">
<div class="tab active">1</div>
<div class="tab">2</div>
<div class="tab">3</div>
</div>

Требуется просставлять классы .active табам по индексу сразу в двух контейнерах .tabs-content. А сейчас присваивает класс табам только в первом контейнере.

В чем ошибка?

[Удален]
#1

Staid, вы обрабатываете событие клик на конкретном элементе, он на нём и срабатывает var thisLi = $(this)

Оптимизайка
На сайте с 11.03.2012
Offline
396
#2
⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
Staid
На сайте с 30.07.2014
Offline
59
#3

Оптимизайка, благодарю, как раз то что нужно!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий