mouseover срабатывает только для первого тега
Здравствуйте! У меня есть код для табов, при наведении на таб присваивается класс active, если убрать мышку с таба, то класс убирается. Проблема в том, что если я убираю мышку с любого таба кроме первого, то класс active не убирается, если я наведу мышкой на первый элемент, то для него срабатывает
$(function() {
$('#common-block-team').on('mouseover', '#team:not(.active)', function() {
$(this)
.addClass('active').siblings().removeClass('active')
.closest('#common-block-team').find('.personal-text').removeClass('active').eq($(this).index()).addClass('active');
$('.personal-text2').css("display", "none");
}),
$('#common-block-team').on('mouseleave', function() {
$(this)
$('#team').removeClass('active');
$('.personal-text').removeClass('active');
$('.personal-text2').css("display", "block");
});
});
})(jQuery);
|
Цитата:
замените id на class и строка 10 в "воздухе висит" |
Исправила, но также не убирается класс active у всех элементов кроме первого
$(function() {
$('.common-block-team').on('mouseover', '#team:not(.active)', function() {
$(this)
.addClass('active').siblings().removeClass('active')
.closest('.common-block-team').find('.personal-text').removeClass('active').eq($(this).index()).addClass('active');
$('.personal-text2').css("display", "none");
}),
$('.common-block-team').on('mouseleave', function() {
$('#team').removeClass('active');
$('.personal-text').removeClass('active');
$('.personal-text2').css("display", "block");
});
});
})(jQuery);
|
Julia1991,
в строке 10 выбран один элемент, по селектору # ищется только один элемент! на нормальной странице все id разные, иначе используют классы. |
Теперь всё работает, большое спасибо!
|
| Часовой пояс GMT +3, время: 05:35. |