如何通过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,
})
);
要查找任何键的正确值,请执行以下操作:
- 将以下内容粘贴到开发工具中:
document.addEventListener(
"keydown",
(e)=>{console.log(e)}
);
按所需的键。
从日志中复制值。
参考: 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
}
}