keydown不能在画布上捕获“ DEL”键

时间:2018-09-27 08:20:57

标签: canvas javascript-events

这不是世界上第一个问题,但我爱理解。我需要通过按Del按钮来处理从画布中删除节点。 所以,我在做什么:

const canvasDiv = document.getElementById('main_diagram')
canvasDiv.childNodes[0].tabIndex = '1'

我将canvas元素的tabIndex设置为1(使所有元素都可聚焦的肮脏老技巧),而不仅仅是添加eventListener:

canvasDiv.addEventListener('keydown', (e) => {
    console.log(e.keyCode)
}, false)

上面的代码不适用于“删除”按钮,但是,当我将监听器更改为时,它确实起作用。

我没有找到任何解释说明为什么这两个事件的行为如此不同,以致于它们无法捕获相同的键。有人可以阐明吗?

0 个答案:

没有答案