如何通过javascript在网页上模拟ESC按键



如何通过javascript在网页上模拟ESC按键?

非常感谢您的帮助!

由于这个问题没有答案,这里有一个可能的解决方案。

function invokeEscKey() {
    var ev = document.createEvent('KeyboardEvent');
    ev.initKeyEvent(
        'keydown', true, true, window, false, false, false, false, 27, 0);
    document.body.dispatchEvent(ev);
}

使用 Javascript 模拟Esc键(在 Firefox 和 Chromium 中测试):

window.dispatchEvent(
            new KeyboardEvent("keydown", {
              altKey: false,
              code: "Escape",
              ctrlKey: false,
              isComposing: false,
              key: "Escape",
              location: 0,
              metaKey: false,
              repeat: false,
              shiftKey: false,
              which: 27,
              charCode: 0,
              keyCode: 27,
            })
          );

要查找任何键的正确值,请执行以下操作:

  1. 将以下内容粘贴到开发工具中:
document.addEventListener(
              "keydown",
              (e)=>{console.log(e)}
            );
  1. 按所需的键。

  2. 从日志中复制值。

参考: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent

你的意思是这样的

$(document).delegate('input','keypress', function(e){
    code = e.keyCode ? e.keyCode : e.which;
    if(code=== 27){
        alert('esc pressed');
    }
});

没有 jQuery:

document.onkeydown = checkKeycode;
function checkKeycode(e) {
var keycode;
  if (window.event) {
    keycode = window.event.keyCode;
  }
  else if (e) {
    keycode = e.which;
  }
  // enter
  if (keycode == 13) {
  }
  // escape
  if (keycode == 27) {
    //place your action here
  }
}