Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.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 jQuery-在$(this)上切换类,并删除所有其他对象上的类_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript jQuery-在$(this)上切换类,并删除所有其他对象上的类

Javascript jQuery-在$(this)上切换类,并删除所有其他对象上的类,javascript,jquery,html,css,Javascript,Jquery,Html,Css,下面是我正在使用的jQuery代码段: $('.panel-title').click(function(){ $(this).find('.state').toggleClass('rotate'); }); 更新-编辑小提琴以匹配更多我正在处理的内容 这是一把小提琴,向你展示了我在说什么 我需要做的是来回切换一个类。这是很直截了当的。但我还需要对其进行设置,以便如果某个元素上已经存在该类,我需要将其删除 因此,在小提琴中,您可以看到,当您单击“这是标题4”时,它会切换“colorCh

下面是我正在使用的jQuery代码段:

$('.panel-title').click(function(){
  $(this).find('.state').toggleClass('rotate');
});
更新-编辑小提琴以匹配更多我正在处理的内容

这是一把小提琴,向你展示了我在说什么

我需要做的是来回切换一个类。这是很直截了当的。但我还需要对其进行设置,以便如果某个元素上已经存在该类,我需要将其删除

因此,在小提琴中,您可以看到,当您单击“这是标题4”时,它会切换“colorChange”类。但当你点击“This heading 2”时,我需要它切换到绿色,但也希望在它切换刚刚点击的元素之前,从“This heading 4”(或它可能存在的任何其他地方)中删除该类

我有办法做到这一点吗?

好了:

$('.panel-title').click(function(){
  // If the clicked element has the rotate class, remove the rotate class from EVERY .panel-title>.state element
  if ($(this).find('.state').hasClass('rotate')){
    $('.panel-title').find('.state').removeClass('rotate');
  }
  // Else, the element doesn't have the rotate class, so we remove it from every element before applying it to the element that was clicked
  else {
    $('.panel-title').find('.state').removeClass('rotate');
    $(this).find('.state').addClass('rotate');
  }
});

如果它有类,则将其删除到每个标题中,否则,将其删除到所有标题中,但将其添加到您单击后的标题中。

这就成功了!!!在我编辑小提琴之前你回答了。其他人抱怨太多了,问题变了,所以我需要创建一个新的帖子。谢谢你的帮助!!很高兴它有帮助:-),我会编辑它以添加一些评论供将来参考。顺便说一句,问题没有改变,你提供了所有需要的信息,你说小提琴是参考,你没有说这是问题;-)