Не уверен, почему моя функция частично работает — Нажмите значок поворота div

#javascript #css

Вопрос:

Я написал код для этого, когда пользователь нажимает на div, значок внутри div поворачивается на 45 градусов. Тем не менее, это работает только в том случае, если пользователь нажимает на сам значок, а не в любом месте вокруг div, в центре которого он находится. Моя цель состоит в том, чтобы это работало, если пользователь щелкает в любом месте div и, конечно, если щелкает сам значок. Любой совет всегда приветствуется. Заранее спасибо.

 
Array.from(toggleBtn).forEach((el) =>
  el.addEventListener("click", (event) => {
    const card = event.target.closest(".director__card");
    const iconBox = event.target.closest(".director__card--iconBox");
    const icon = event.target.closest(".director__card--icon");
    card.classList.toggle("flipped");
    if (card.classList.contains("flipped")) {
      iconBox.classList.add("switched");
      icon.classList.add("rotate");
    } else {
      iconBox.classList.remove("switched");
      icon.classList.remove("rotate");
    }
  })
);

 
 <div class="director__card">
                <div class="director__card--frontside">
                <img class="director__card--avatar" src="${card.image}" alt="director-img" />
                <h1 class="director__card--title">${card.name}</h1>
                <p class="director__card--role">${card.role}</p>
                <div class="director__card--iconBox">
                <img class="director__card--icon" src="${card.icon}" alt="icon" />
                </div>
                </div>
</div>

 

Я визуализирую элементы, сопоставляя массив объектов-

если пользователь нажимает на значок, значок поворачивается

если пользователь нажимает на значок div, в котором он находится, он не вращается

Комментарии:

1. вы должны применить прослушиватель событий onclick к оболочке значка(div), тогда он будет работать нормально. Я надеюсь, что это вам поможет!

2. да, (toggleBtn) — это оболочка значка ^

3. Не видя html — разметки, я бы согласился с @GulshanAggarwal-если это не ответ, то нам нужно посмотреть, как собрана разметка

4. Да, @Kinglish, ты прав!

5. @Kinglish Я обновил свой вопрос с помощью html-разметки-