I want to check if an element has this class or another class like this:
if ( $elem.hasClass("foo") || $elem.hasClass("bar") ) {
  // do something
}
And I also want to check if an element has two classes:
if ( $elem.hasClass("foo") && $elem.hasClass("bar") ) {
  // do something else
}
Is there a way to do this all within the hasClass() function? Something like:
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
}
                Strictly answering to your question: no, you can not.
hasClass() accepts a single argument.
As pointed out by others, you might use is(), but here is a test that shows that performances are very much penalized.
I suggest you to stay with your current code.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With