在jQuery

时间:2016-09-27 10:15:50

标签: jquery toggleclass

如何在jQuery中的两个类之间切换,而该元素没有任何一个类。

请注意:我想知道是否有办法使用toggleClass()方法执行此操作,而不是addClass()removeClass()。例如:

$('#myDiv').click(function(){
    $("#myDiv").toggleClass('red blue') 
})

2 个答案:

答案 0 :(得分:8)

您可以使用toggleClass()方法的函数参数:

$('#myDiv').click(function() {
  $(this).toggleClass(function(){
    return $(this).is('.red, .blue') ? 'red blue' : 'red';
  })
});

$('#myDiv').click(function() {
  $(this).toggleClass(function() {
    return $(this).is('.red, .blue') ? 'red blue' : 'red';
  })
});
.red {
  color: red;
}
.blue {
  color: blue;
}
#myDiv {
  -webkit-user-select: none;
  /* Chrome all / Safari all */
  -moz-user-select: none;
  /* Firefox all */
  -ms-user-select: none;
  /* IE 10+ */
  user-select: none;
  /* Likely future */
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="myDiv">
  My DIV
</div>

答案 1 :(得分:2)

只需将toggleClass与多个班级一起使用即可。 jQuery将逐个切换它们。

$("div").addClass("red");

setInterval(function() {
    $("div").toggleClass("red blue");
}, 1000);
div {
  width: 100px;
  height: 100px;
}
.red {
  background: red;
}
.blue {
  background: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div></div>