2013-03-25 55 views
0

我目前正在运行一个小的JQuery函数,如果点击了一个按钮,它将切换一个新类。Jquery - 在多个按钮上切换类

$(".button1").click(function() { 

     $(this).toggleClass("button2"); 

    }); 

这工作得很好,不过,我的问题是,我已经连续5个按钮,我只想要一个有新的类在同一时间。此刻,如果我点击任何其他按钮,他们也会得到应用的新课程。我想要它,如果有人点击另一个按钮,从原始按钮中删除button2类,并将其仅应用于newley点击按钮。

想达到这个目的吗?

+0

所以,你想这将只适用于你''按钮'''你点击'? – 2013-03-25 05:08:09

回答

2

试试这个:

$(".button1").click(function() { 
    $(this).parent().find(".button2").removeClass("button2"); 
    $(this).addClass("button2"); 
}); 
+0

只有这些按钮有一个共同的父容器,但这是一个很好的解决方案。 – 2013-03-25 05:06:20

+0

@MikeBrant你是对的。由于这个问题中没有HTML,我不得不假设一些东西。你总是可以用'$(“#buttons_container_id”)'甚至'$(body)'替换'$(this).parent()'。通用的问题=>通用答案:-) – 2013-03-25 05:10:02

+0

这正是我以后的。有一个父类,我应该包含html。 – JPDP 2013-03-25 05:18:34

0

这应该做你想要什么:

$('.button1').click(function() { 
    $('.button2').removeClass('button2'); 
    $(this).addClass('button2'); 
});