@LeonidPokrovskiy

Почему canvas не отлавливает события?

Еще в предыдущем вопросе я описал проблему. Вкратце - надо сэмулировать клик по центру экрана (канваса), чтобы начать игру в браузерной игре.

Посидев еще немного я смог конкретизировать проблему - канвас, в котором и отрисовывается графика игры, попросту не ловит никакие события, и, скорее всего, именно из-за этого и не получается сгенерировать свои события на этом канвасе.

Итак, вот этот канвас:
5e75fb2000778166318274.jpeg

Чтобы начать игру, по нему нужно сделать mousedown. Пишу в консоли:
document.onmousedown = function(e){console.log(e.target)}


Затем начинаю игру (делая mousedown по канвасу, да, там именно mousedown - не click). В консоли появляется:
5e75fb7e4f4d9357661867.jpeg

То есть этим подтверждается, что именно на этот канвас надо нажать, чтобы начать игру.

Затем пишем в консоли:

var cnvs = document.querySelector('canvas')
cnvs.onmousedown = function(e){console.log('Нажали на canvas!!!')}


Затем нажимает на канвас и этот лог не появлятся! Как это возможно? Причем листенер на document показал, что был mousedown на канвас.

Что я упускаю? Почему через document можно отловить клик по канвасу, а сам канвас эти клики не регистрирует? В чем дело?

Ссылка на игру: https://krunker.io/ (это не реклама...)
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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