Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 一次单击即可切换多个类_Javascript_Jquery - Fatal编程技术网

Javascript 一次单击即可切换多个类

Javascript 一次单击即可切换多个类,javascript,jquery,Javascript,Jquery,我正在制作一个常见问题解答,其中答案会在单击时切换,但它也会切换一个div类以更改颜色。它在第一个div中工作得很好,但是我想用同样的代码触发另一个类,通过添加另一个toggleClass,我几乎可以让它工作,但是.c也切换.b而不是to.d $(.faq div.answer”),$(.faq div.faqbox”)。单击(函数(a){ a、 预防默认值(); var n=$(this.parent().find(“div.answer”); $(.faq div.answer”).not

我正在制作一个常见问题解答,其中答案会在单击时切换,但它也会切换一个div类以更改颜色。它在第一个div中工作得很好,但是我想用同样的代码触发另一个类,通过添加另一个toggleClass,我几乎可以让它工作,但是.c也切换.b而不是to.d

$(.faq div.answer”),$(.faq div.faqbox”)。单击(函数(a){
a、 预防默认值();
var n=$(this.parent().find(“div.answer”);
$(.faq div.answer”).not(n),n.slideToggle(),$(this.find(“div”).toggleClass(“ab”).toggleClass(“cd”)
});
。回答{
显示:无;
}
.a{宽度:20px;高度:20px;背景:#000000;}
.c{宽度:20px;高度:20px;背景:#888888;}
.b{宽度:20px;高度:20px;背景:#ff0000;}
.d{宽度:20px;高度:20px;背景:00ff00;}

问题
答复
问题
答复

Toggle类将删除存在的类,如果不存在则添加,这意味着
$(this).find(“div”).toggleClass(“ab”).toggleClass(“cd”)语句将始终添加元素没有的三个类

要解决此问题,您可以获取具有类
a
b
的所有子元素,并切换
ab
类,并对
cd
类执行相同操作,下面是一个示例:

$(.faq div.answer”),$(.faq div.faqbox”)。单击(函数(a){
a、 预防默认值();
var n=$(this.parent().find(“div.answer”);
n、 滑动切换();
$(此).find(“a区,b区”).toggleClass(“a区,b区”);
$(this.find('div.c,div.d')。toggleClass(“cd”);
});
。回答{
显示:无;
}
.a{宽度:20px;高度:20px;背景:#000000;}
.c{宽度:20px;高度:20px;背景:#888888;}
.b{宽度:20px;高度:20px;背景:#ff0000;}
.d{宽度:20px;高度:20px;背景:00ff00;}

问题
答复
问题
答复