Как добавить всем дивам на странице один класс через javascript?

Рейтинг: 0Ответов: 1Опубликовано: 29.12.2014

Как можно всем дивам на странице (кроме дивов с определенными классами и id) добавить один класс через javascript? Например, при клике на определенную кнопку, или сразу при загрузке страницы.

Ответы

▲ 3Принят

Используем псевдокласс :not().

var blurElems = document.querySelectorAll('body *:not(.my_modal)');
for(var i = 0; i < blurElems.length; i++){
    blurElems[i].className += " blur_class";
}

Всем элементам, у которых нет класса "my_modal", добавляем класс "blur_class".

UPD Кстати, есть методы className, которые позволяют гораздо проще управлять классами: add(), remove(), toggle() и contains(), но только нужно учитывать, что в старых браузерах может и не работать.