全屏退出后未触发JavaScript'keyUp'事件

时间:2018-08-14 18:48:19

标签: javascript fullscreen keyup

keyUp 事件的行为非常奇怪。附加了JS代码段。在Chrome / Chromium上进行了测试。

复制步骤:

  1. F11 进入全屏模式
  2. 按下 A 键(保持按下状态)
  3. F11 退出全屏
  4. 释放 A

结果-控制台中没有输出行!这是为什么?我期望看到一些东西,但是似乎退出全屏显示会禁用以后的keyUp事件。就我而言,我是通过按一个键来开始工作的,释放后需要将其停止。目前,它继续运行。

问题是-我如何使其工作?

那可能是Chrome / Chromium错误吗?我已经尝试过Firefox-成功触发 keyup 事件。

i = 0;

window.addEventListener("keyup", function() {
    console.log("key up, " + i);
    i = i+1;
});

1 个答案:

答案 0 :(得分:0)

它不适用于Chrome,但适用于Firefox。我想这取决于按f11键时浏览器如何处理按键事件。 chrome可能在事件上使用了preventDefault。这里的答案说明了这样做的原因:

Chrome eats javascript keydown event handler on F11 key press, when browser is already in full screen mode