Вывести 4 красных квадрата, при клике на любой, он становиться зеленым, при этом если есть уже зеленый квадрат, то он становиться обратно красным и так можно кликать на любой квадрат, он становиться зеленым, а старый зеленый квадрат обратно крассным и тд.
Не понимаю, почему нужно писать div.green, а не, например, square.green в отмеченной строке. Помогите, пожалуйста, подробно разобраться.
<div id="js" class="box">
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
</div>
.box {
display: flex;
flex-direction: row;
gap: 10px;
}
.square {
width: 70px;
height: 70px;
background-color: red;
cursor: pointer;
}
.green { background-color: green; }
let box = document.querySelector('#js');
box.addEventListener('click', (event) => {
if (!event.target.classList.contains('square')) {
return;
}
document.querySelector('div.green')?.classList.remove('green'); //вот тут!
event.target.classList.add('green');
})