I have a simple if statement as such:
if ($('html').hasClass('m320')) { // do stuff } This works as expected. However, I want to add more classes to the if statement to check if any of the classes are present in the <html> tag. I need it so it's not all of them but just the presence of at least one class but it can be more.
My use case is that I have classes (e.g. m320, m768) added for various viewport widths so I only want to execute certain Jquery if it's a specific width (class).
Here is what i have tried so far:
1.
if ($('html').hasClass('m320', 'm768')) { // do stuff } 2.
if ($('html').hasClass('m320')) || ($('html').hasClass('m768')) { // do stuff } 3.
if ($('html').hasClass(['m320', 'm768'])) { // do stuff } None of these seem to work though. Not sure what I am doing wrong but most likely my syntax or structure.
You could use is() instead of hasClass():
if ($('html').is('.m320, .m768')) { ... }
You just had some messed up parentheses in your 2nd attempt.
var $html = $("html"); if ($html.hasClass('m320') || $html.hasClass('m768')) { // do stuff }
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