【发布时间】:2015-08-27 16:19:27
【问题描述】:
我想检查一个元素是否有这个类或另一个这样的类:
if ( $elem.hasClass("foo") || $elem.hasClass("bar") ) {
// do something
}
我还想检查一个元素是否有两个类:
if ( $elem.hasClass("foo") && $elem.hasClass("bar") ) {
// do something else
}
有没有办法在hasClass() 函数中完成这一切?比如:
if ( $elem.hasClass("foo bar") ) {
// do something when element has both classes
}
else if ( $elem.hasClass("foo","bar") ) {
// do something when element has either class
}
【问题讨论】:
-
你可以试试
$element.is('.foo, .bar') -
你想如何用一个表达式来表达两个相反的表达式?
$elem.hasClass("foo bar")是否意味着它具有两个类或其中一个类?如果你不告诉它,jQuery 怎么知道你想表达什么? -
然后使用例如
if($element.is('.foo.bar')){...}else if($element.is('.foo, .bar')){...} -
所以
is()比hasClass()在使用多个类或条件时更有用?
标签: javascript jquery