groog
@groog
Я только учусь

Почему chrome игнорирует обработчик события?

В chrome обработчик родительского узла перехватывает клик и обработчик дочернего элемента не срабатывает. FF выполняет оба обработчика. Если оставить два одинаковых события (только onmousedown или только onclick), все работает корректно.

HTML
<section id = "parent">
  <div id = "child">
    Child
  </div>
</section>


JS
var child = document.querySelector("#child");
var parent = document.querySelector("#parent");

child.onclick = function(){
	alert("Привет, я - Child");
}

parent.onmousedown = function(){
	alert("Привет, я - Parent");
}


Вот пример на jsfiddle
  • Вопрос задан
  • 149 просмотров
Пригласить эксперта
Ответы на вопрос 2
child.addEventListener('click', function(){
  alert("Привет, я - Child");
})

child.addEventListener('mousedown', function(){
  alert("Привет, я - Parent");
})


Читать.
Ответ написан
Комментировать
@Kim_Soal
Действительно, не работало так
Наверное, это какая-то особенность всплытия событий в хроме
Можно просто проверять таргеты, если не заморачиватся
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы