我們有addClass,removeClass,toggleClass三元或更簡潔setClass相當於
什麼是jQuery的相當於
document.getElementById("field").className=(someBoolean)?"pass":"fail";
,但使用的是離開現有的類來代替的方法之一?
我來最接近的是在我看來不那麼優雅
$("#field")
.toggleClass("pass",someBoolean)
.toggleClass("fail",!someBoolean);
或者使用瓦爾
$("#field")
.toggleClass(classWhenTrue,someBoolean)
.toggleClass(classWhenFalse,!someBoolean);
例子:
$(function() {
var pass = true;
$("#field")
.toggleClass("pass", pass)
.toggleClass("fail", !pass);
var classes = [...$("#field").get(0).classList];
console.log(classes)
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<input id="field" type="text" class="test fail done" />
爲什麼是雙'toggleClass'不那麼優雅?它比任何你得到的答案都更可讀... – Cerbrus 2018-01-30 09:38:39
這是一個5歲的問題。我可能只是好奇:) – mplungjan 2018-01-30 09:50:22