2011-03-31 108 views
23

我需要能够切换类,当我点击一个元素。它工作正常,该元素:用jQuery切换多个元素类

$(".main").click(function() { 
    $(this).toggleClass("classA").toggleClass("classB"); 
}); 

但我想给它添加切换类具有特定类网页上的所有元素,说“togToo”。对于那些我需要在“classC”和“classD”之间切换的元素。

我几乎可以肯定有一种方法给组合成一个点击...

^^^修订以上^^^

回答

10

回答更新

$(".main").click(function() { 
    $(this).toggleClass("classA").toggleClass("classB"); 
    $('.togToo').toggleClass("classC").toggleClass("classD"); 
}) 
+0

我不知道你的意思 – Neal 2011-03-31 19:52:02

+0

我需要切换其他(二级)元素的类时,我只点击该主元素。 – santa 2011-03-31 19:52:33

+0

嗯一秒 – Neal 2011-03-31 19:53:47

0

您可以简单地做一些类似于


$("classC").toggle("ClassD"); 

“点击”处理程序中

2

这应该做的伎俩:而不是之间切换

$(".main").click(function() { 
    $(this).toggleClass("classA").toggleClass("classB"); 
    $(".togToo").toggleClass("classC").toggleClass("classD"); 
)); 

此外,切换类时,我建议有一个基类,以及拨动类,两个班。

2

为什么不使用jQuery类选择器?

$('.togToo').toggleClass("classC").toggleClass("classD"); 
+0

对我来说工作正常 – Henry8 2015-06-10 17:28:28

73

如果要切换的元素与两个类中的一个开始,你就可以来回切换是这样的:

$('#element_to_click').click(function(){ 
    $('.togToo').toggleClass('classC classD'); 
}); 
+23

这应该是公认的答案。 – 2014-06-24 08:31:50

0

我做这种方式,具有一流的多张图片$('。img-polaroid')和class $('。drag'),当其中一个图像被点击时,它将这个元素加回到所有元素后删除$('。drag')

$('.img-polaroid').click(function(){ 
    if ($(this).hasClass('drag')) 
     { 
     $('.img-polaroid').addClass('drag'); 
     $(this).removeClass('drag'); 
    } 
}); 
0

如果您正在寻找一种方法来切换乐通过复式班一个后对方,而不是一起我很快就写了一个小脚本,你可以使用:但这正是你想要的

https://github.com/ThibaultJanBeyer/.toggleClasses-for-jQuery

它扩展了一个新的jQuery方法.toggleClasses()。检查出来,并感到自由,使其更好,如果你有改善:)