鼠标悬停事件后,addClass()不起作用

时间:2015-01-05 19:41:02

标签: jquery

大家好我在使用jquery添加课程时添加课程

$('.t_wrapper').mouseover(function () {
    $(this).addClass('t_active');
});
$('.t_wrapper').mouseout(function () {
    $('.t_wrapper').removeClass('t_active');
});

// '.t_active'无法识别父标记,对不起我的英文:(

var tag = $('.t_active .tables li:nth-child(' + n + ')');

1 个答案:

答案 0 :(得分:3)

选项1:

 $('.t_wrapper').mouseenter(function () {
      $(this).addClass('t_active');
 });
 $('.t_wrapper').mouseleave(function () {
      $(this).removeClass('t_active');
 });

选项2

 $('.t_wrapper').mouseover(function () {
      $('.t_wrapper').addClass('t_active');
 });
 $('.t_wrapper').mouseout(function () {
      $('.t_wrapper').removeClass('t_active');
 });

每次鼠标进入或离开子元素时,都会触发鼠标悬停,但不会触发鼠标中心。 因此,在鼠标悬停或鼠标移动时不要使用$(this),它们不是同一个目标。