Иконка в кнопке перехватывает event.target

30.12.2025 · JavaScript

Иконка в кнопке перехватывает event.target

Обработчик висит на кнопке, но при нажатии на SVG пытается прочитать данные у path. target указывает на исходный узел события. Для прямого обработчика используйте currentTarget.

button.addEventListener("click", function(event) {
  const id = event.currentTarget.dataset.id;
  console.log(id);
});

У делегированного обработчика currentTarget будет контейнером. Там ищите кнопку через closest и проверяйте, что она относится к нужному контейнеру. Не читайте currentTarget после await: сохраните ссылку до асинхронной операции. Проверьте нажатие на текст, фон и вложенную иконку.

Назад в блог

От идеи —
к первому шагу.

Расскажите, что хотите создать.
Обсудим задачу и наметим следующий шаг.