Не первая мировая проблема, но я бы хотел понять.Мне нужно обработать удаление узлов из холста, нажав кнопку Del.Итак, что я делаю:
const canvasDiv = document.getElementById('main_diagram')
canvasDiv.childNodes[0].tabIndex = '1'
Я устанавливаю tabIndex элемента canvas на 1 (грязный старый трюк, чтобы сделать любой элемент фокусируемым), а затем просто добавляю eventListener:
canvasDiv.addEventListener('keydown', (e) => {
console.log(e.keyCode)
}, false)
Codeвыше не работает для кнопки Удалить, однако, когда я меняю слушателя на keyup - это работает.
Я не нашел объяснения, почему эти два события ведут себя так по-разному, что они не могут захватывать одни и те же ключи.Кто-нибудь может пролить свет на это?