jQuery removeClass() 如果存在

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/18468177/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-26 21:41:47  来源:igfitidea点击:

removeClass() if it exists

jqueryhtml

提问by Daft

This function adds a rotatedclass to my button when I click it. The button has an arrow on it which points in the direction the panel has slid.

rotated当我单击它时,此函数会向我的按钮添加一个类。该按钮上有一个箭头,指向面板滑动的方向。

How could I remove the rotated class when I click the button again?

当我再次单击按钮时,如何删除旋转的类?

$("#btnDiv").click(function (){
     $('#slidePanel').toggle( "slide",{direction: 'right'});
     $('#btnDiv').addClass('rotated');
});

Something like this maybe?

也许像这样的东西?

if('rotated'){
    removeClass('rotated')
}else{
    addClass('rotated')
}

回答by Pointy

You can use .toggleClass()

您可以使用 .toggleClass()

$('#btnDiv').toggleClass('rotated');

That adds it if it's missing, and removes it if it's present. There's also .is()to check for things like that:

如果缺少,则添加它,如果存在则将其删除。还有.is()检查类似的事情:

if ($('#btnDiv').is('.rotated'))

or more simply:

或更简单地说:

if ($('#btnDiv').hasClass('rotated'))

回答by Satpal

Try this

尝试这个

if($('#btnDiv').hasClass('rotated')){
   $('#btnDiv').removeClass('rotated')
}else{
  $('#btnDiv').addClass('rotated')
}

回答by Khalid Dabjan

if($('#btnDiv').hasClass('rotated')){
   $('#btnDiv').removeClass('rotated')
}else{
   $('#btnDiv').addClass('rotated')
}

回答by Aboca

$("#btnDiv").click(function (){
    $('#slidePanel').toggle( "slide",{direction: 'right'});
    if($('#btnDiv').hasClass('rotated')){
          $('#btnDiv').removeClass('rotated');
    }
    else{
         $('#btnDiv').addClass('rotated');
    }
  });

回答by Sharath Daniel

Just use .toggleClass()to acheive that.

只是用来.toggleClass()实现这一点。