我在键盘上按S,然后按D,然后释放S.为什么以下代码在我释放S后再次触发D的按键事件?有没有办法找出D的第二个下行事件是由另一个键的关键引起的?
function handler(event) {
if (!event.repeat) console.log(event.code, event.type);
}
window.addEventListener('keydown', handler);
window.addEventListener('keyup', handler);
输出:
KeyS keydown - S pressed
KeyD keydown - D pressed
KeyS keyup - S released
KeyD keydown - WHY???
奇怪的keydown事件只发生在 Chrome (我在Linux Mint上使用Chromium 66.0.3359.139),这在Firefox中不会发生。
这可能是一个错误,还是预期的行为?