Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   mouseover срабатывает только для первого тега (https://javascript.ru/forum/jquery/77806-mouseover-srabatyvaet-tolko-dlya-pervogo-tega.html)

Julia1991 23.06.2019 18:55

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);

рони 23.06.2019 19:06

Цитата:

Сообщение от Julia1991
$('#common-block-team')

это только один элемент!!!
замените id на class и строка 10 в "воздухе висит"

Julia1991 23.06.2019 19:19

Исправила, но также не убирается класс 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);

рони 23.06.2019 20:01

Julia1991,
в строке 10 выбран один элемент, по селектору # ищется только один элемент! на нормальной странице все id разные, иначе используют классы.

Julia1991 23.06.2019 20:16

Теперь всё работает, большое спасибо!


Часовой пояс GMT +3, время: 17:38.