DZHAMBULAT-SAMOUCHKA
@DZHAMBULAT-SAMOUCHKA
Frontend разработчик

Как получить элементы, у которых отсутствует определённый класс?

Мне нужно получить элемент по классу element-1, у которого не будет класса none. Как это сделать? Я пытался вот так сделать, но мне возвращалась пустая коллекция:

const element = document.querySelectorAll(
    !(`.${.element-1}` && ".none") && `.${.element-1}`
  );
// И ТАК ТОЖЕ ПЫТАЛСЯ
const element= document.querySelectorAll(
   `.${.element-1}` && !".none"
  );

<div class="container">
  <div class="element-1"></div>
  <div class="element-1"></div>
  <div class="element-1"></div>
  <div class="element-1"></div>
  <div class="element-1"></div>
  <div class="element-1"></div>
  <div class="element-1 none"></div>
  <div class="element-1"></div>
  <div class="element-1"></div>
  <div class="element-1 none"></div>
</div>
  • Вопрос задан
  • 194 просмотра
Решения вопроса 1
VoidVolker
@VoidVolker Куратор тега JavaScript
Dark side eye. А у нас печеньки! А у вас?
Документацию внимательнее читать следует:

document.querySelectorAll(selectors)

selectors

Строка DOMString, содержащая один или более CSS селектор (en-US). Эта строка должна быть валидным CSS селектором. Если это не так, то генерируется SyntaxError. Смотрите Поиск элементов DOM с использованием селекторов для получения информации о том, распознавать элементы. Несколько селекторов нужно разделить запятыми.


https://developer.mozilla.org/ru/docs/Web/API/Docu...

В данном случае надо получить сначала список элементов с нужным классом, а потом отфильтровать в нем те, у которых отсутствует не нужный класс. Можно ручками, можно селектором.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы