我到处搜索,阅读MDN上的文档,但我似乎无法解决这个问题。
我想模仿客户端使用Javascript按空格键。
我试过了:
var e = new KeyboardEvent('keydown');
e.which = e.keyCode = 32; // 32 is the keycode for the space bar
document.dispatchEvent(e);
然而,无论出于何种原因,这都无法奏效;如果在上面的代码之前放置了以下事件处理程序:
document.addEventListener('keydown', function(ev){
console.log(ev.which);
});
0
已记录到控制台。
出于某种原因,事件已触发,但密钥始终为0
有人可以帮我解决吗?
答案 0 :(得分:5)
你可以这样做
var e = new KeyboardEvent('keydown',{'keyCode':32,'which':32});
演示:https://jsfiddle.net/5se13tmg/
参考:https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/KeyboardEvent
答案 1 :(得分:5)