Задать вопрос
@m4son

Как лучше выполнять действие при клике в javascript?

Мучает вопрос, как эффективнее написать код выполнения функции по клику.
Я нахожу 2 варианта:
1- присвоение события клика каждому элементу,
2- присвоение события глобальному элементу (например body) и проверкой на класс.
Вот пример:
<div>
  <button class="btn-1">Кнопка 1</button>
  <button class="btn-1">Кнопка 1</button>
  <button class="btn-1">Кнопка 1</button>
</div>
<div>
  <button class="btn-2">Кнопка 2</button>
  <button class="btn-2">Кнопка 2</button>
  <button class="btn-2">Кнопка 2</button>
</div>

let buttons1 = document.getElementsByClassName("btn-1");
for (btn of buttons1) {
  btn.addEventListener("click", () => {
    console.log("Нажали на кнопку 1");
  })
}

document.body.addEventListener("click", (event) => {
  let btn = event.target;
  if (btn.classList.contains("btn-2")) {
    console.log("Нажали на кнопку 2");
  }
})
  • Вопрос задан
  • 158 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Rerurk
bt. onmousedown=() =>{бла бла бла } если по id
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы