Как добавить класс блоку
подскажите пожалуйста, как правильно добавить класс блоку. есть иконка1 с классом "click_link", при нажатии на которую у нее появляется класс "active". нужно сделать так чтобы при нажатии на эту иконку, если у нее есть класс active, то блоку c классом "col-lg-3 col-md-4 col-sm-5 col-sm-offset-0 col-xs-11 col-xs-offset-1 open" присваивался тоже класс active. потом при нажатии на другую иконку у иконки1 исчезает класс active и у блока тоже исчезал класс active. пытался так, но что то не работает как надо. `var element = document.querySelector('.click_link'); var block = document.querySelector('.open');
var element = document.querySelector('.click_link');
var block = document.querySelector('.open');
element.onclick() = function() {
if (element.classList.contains("active"))
block.classList.toggle('.active');
else block.classList.remove('.active');
}
Ответы (1 шт):
Автор решения: Oliver Patterson
→ Ссылка
const elements = document.querySelectorAll('.click_link');
const block = document.querySelector('.open');
elements.forEach((element) =>
{
element.addEventListener('click', (event) =>
{
const isActive = event.target.classList.contains('active');
block.classList.toggle('active', isActive);
});
});
.click_link
{
display: block;
}
.open
{
display: none;
}
.open.active
{
display: block;
}
<button class="click_link">icon 1</button>
<button class="click_link active">icon 2 (с классом active)</button>
<button class="click_link">icon 3</button>
<div class="open">
Block
</div>
