通过jQuery激活类冲突

时间:2013-01-11 11:09:38

标签: javascript jquery css

我设计了一个HTML网站,并在active

上放置了a课程
$('a').click(function(){
     $('a').removeClass("active");
     $(this).addClass("active");
});

它正在运作。我在active上有一个菜单结构和连接页脚和顶层菜单。

 $('.menuHolder li a').click(function (e) {
      $('.menuHolder li a').removeClass('active');
      var link = $(this).attr('href');
      $('a[href="' + link + '"]').addClass('active');

    });

现在,当我点击menu-item get active class时,OK。但是当我点击菜单上的某个项目时,请删除我的菜单项上的active课程。

所以,我想要菜单项active删除只点击另一个菜单项。我该如何解决?

5 个答案:

答案 0 :(得分:0)

试试这个

 $('.menuHolder li a').click(function (e) {
      $('.menuHolder li a.active').removeClass('active');
      var link = $(this).attr('href');
      $('a[href="' + link + '"]').addClass('active');

    });

答案 1 :(得分:0)

将特定类分配给您的菜单项并改为使用切换:

$('.menu-item').click(function() {
  $(this).toggleClass('active');
}

答案 2 :(得分:0)

尝试改变

$('.menuHolder li a').removeClass('active');

$('.menuHolder li a.active').removeClass('active');

答案 3 :(得分:0)

尝试类似这样的事情。工作fiddle

    $(function(){
        $('.menuHolder li a').click(function (e) {
              $('.menuHolder li a').removeClass('active');
              $(this).addClass('active');

        }); 
    });

答案 4 :(得分:0)

哦,对不起。

当我这个代码时,一切正常。也许,每个a现在添加和删除活动自动。

$('a').click(function(){
     $('a').removeClass("active");
     $(this).addClass("active");
});