Мне интересно, как выбрать элемент, у которого нет определенного класса, с помощью JavaScript, а не jQuery.
Например, у меня есть такой список:
<ul id="tasks">
<li class="completed selected">One Task</li>
<li>Two Task</li>
</ul>
и я выбираю выполненную задачу по:
var completeTask = document.querySelector("li.completed.selected");
Но тогда я не уверен, как выбрать элемент списка, у которого нет этих классов.
javascript
html
class
Джаиун Ли
источник
источник
completed
иselected
класс?li.completed.selected
-> это будет соответствовать всем темli
элементам, у которых есть классcompleted
ANDselected
Вы можете попробовать
:not()
селекторvar completeTask = document.querySelector("li:not(.completed):not(.selected)");
http://jsfiddle.net/UM3j5/
источник
document.querySelectorAll('[wf-body=details] input:not(.switch):not(.btn)').forEach(function(e){ // do whatever you want. with 'e' as element :P });
источник
Попробуйте вместо этого получить массив дочерних элементов родителя:
var completeTask = document.querySelector("#tasks").childNodes;
Затем перебирайте / ищите их по мере необходимости.
источник