Я работаю с jQuery и смотрю, есть ли простой способ определить, имеет ли элемент определенный класс CSS, связанный с ним.
У меня есть идентификатор элемента и класс CSS, который я ищу. Мне просто нужно иметь возможность в операторе if выполнять сравнение, основанное на существовании этого класса в элементе.
javascript
jquery
css
Митчел Селлерс
источник
источник
Ответы:
Используйте
hasClass
метод:или
Аргументом (очевидно) является строка, представляющая класс, который вы проверяете, и он возвращает логическое значение (поэтому он не поддерживает цепочку, как большинство методов jQuery).
Примечание. Если вы передадите
className
аргумент, содержащий пробелы, он будет сопоставлен буквально соclassName
строкой элементов коллекции . Так что, если, например, у вас есть элемент,тогда это вернется
true
:и они вернутся
false
:источник
из FAQ
или:
источник
Что касается отрицания, если вы хотите знать, что элемент не имеет класса, вы можете просто сделать, как сказал Марк.
источник
Без jQuery:
Или:
Это намного быстрее, чем jQuery!
источник
...&&!!((' '+e.classname+' ').indexOf(' '+c+' ')+1)
, а не только&&!(' '+e.classname+' ').indexOf(' '+c+' ')
?indexOf
возврат-1
это класс не существует. Если бы я сделал!!-1
, это было быtrue
. Так как я делаю!!-1+1
, это будет ложным. Лучше было бы...&&!!~(' '+e.className+' ').indexOf(' '+c+' ')
, но я не помнил этого в то время....&&~(' '+e.className+' ').indexOf(' '+c+' ')
В интересах помочь любому, кто приземлится здесь, но на самом деле ищет jQuery бесплатный способ сделать это:
источник
Проверьте официальную страницу часто задаваемых вопросов jQuery:
Как проверить, имеет ли элемент перикулярный класс или нет
источник
источник
В моем случае я использовал функцию «is» jQuery, у меня был HTML-элемент с добавленными различными классами CSS, в середине я искал определенный класс, поэтому я использовал «is» хорошую альтернативу для проверки класс, динамически добавляемый в элемент HTML, который уже имеет другие классы CSS, это еще одна хорошая альтернатива.
простой пример:
расширенный пример:
источник