Есть html код, необходимо чтобы js удалял у всех найденных элементов определенный класс.
var st = document.getElementById('st');
st.classList.remove('st');
.st {
color: red;
}
<div class="block">
<div id="st" class="st">1</div>
</div>
<div class="block">
<div id="st" class="st">2</div>
</div>
<div class="block">
<div id="st" class="st">3</div>
</div>
Необходимо, чтобы класс удалился у всех элементов. Желательно сделать так, чтобы код был автономным и удалял класс если элементов станет 5.
var st = document.querySelectorAll('[id="st"]');
for (var i = 0; i < st.length; i++) {
st[i].classList.remove('st');
}
.st {
color: red;
}
<div class="block">
<div id="st" class="st">1</div>
</div>
<div class="block">
<div id="st" class="st">2</div>
</div>
<div class="block">
<div id="st" class="st">3</div>
</div>
Когда у элемента есть атрибут id, это значит, что на странице будет только один элемент с таким id. А метод document.getElementById('');
всегда возвращает только один элемент.
Для выборки нескольких элементов обычно используют метод document.querySelectorAll('');
.
Как только выбрали все элементы, можно пройтись по ним циклом, и с помощью метода el.classList.remove('');
удалить нужный класс.
if($('.st').length==5) {
$('.block').each(function(){
$(this).children().removeClass('st');
});
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть цикл с 5 итерациями, каждая длиться по 15 секунд, в цикл помещена функция, задача, ограничить вызов функции на каждой итерацииПроловал...
Мне нужно перебрать массив из двух значений, чтобы на выходе получить все значения между нимиНапример: ['10-07-2018', '18-07-2018'] = > ['11-07-2018', '12-07-2018',...
У меня есть модуль, который имеет следующую функцию: