Javascript 在按住另一个键的同时返回按键
因此,我需要的是能够按住空格键,脚本需要重复发送空格键的垃圾邮件,就好像我是通过点击来完成的一样 我已经写了一些代码,但我不能让它像我想要的那样工作Javascript 在按住另一个键的同时返回按键,javascript,dom-events,Javascript,Dom Events,因此,我需要的是能够按住空格键,脚本需要重复发送空格键的垃圾邮件,就好像我是通过点击来完成的一样 我已经写了一些代码,但我不能让它像我想要的那样工作 document.addEventListener("keydown", function(event) { if (event.keyCode == 32) { var i = 0; setInterval(() => { var e = document.createEvent('HT
document.addEventListener("keydown", function(event) {
if (event.keyCode == 32) {
var i = 0;
setInterval(() => {
var e = document.createEvent('HTMLEvents');
e.keyCode = 32;
e.initEvent(++i % 2 > 0 ? 'keyup' : 'keydown', false, true);
window.dispatchEvent(e);
}, 35);
}
});
所以基本上这是可行的,当我按下空格键时,它会反复上下按下空格键,但是当我松开空格键时它不会停止,但是直到我按下空格键它才真正启动,这意味着它在某种程度上工作
我知道问题出在这行e.initEvent(++I%2>0?'keyup':'keydown',false,true)代码>
但实际上我已经从另一个项目中恢复了这段代码,但我不知道它在做什么或如何做
有人有什么建议吗?不确定这是否是您需要的。看一看。事件具有repeat属性
let test=1;
设temp=document.querySelector('.test');
temp.innerHTML=测试;
文档.添加的事件列表器(“键控”,函数(事件){
如果(event.keyCode==32){
console.log(事件重复);
测试+=1;
temp.innerHTML=测试;
}
});代码>
不确定这是否是您需要的。看一看。事件具有repeat属性
let test=1;
设temp=document.querySelector('.test');
temp.innerHTML=测试;
文档.添加的事件列表器(“键控”,函数(事件){
如果(event.keyCode==32){
console.log(事件重复);
测试+=1;
temp.innerHTML=测试;
}
});代码>
我已经仔细研究了这个问题,但我不确定在释放空格键之前如何将其反复实现为keyup-keydown。我已经仔细研究了这个问题,但不确定在释放空格键之前如何将其反复实现为keyup-keydown。我假设这会将空格键发送到某种控制台(我对java不太了解)我需要它向我需要的游戏发送一个空格键(模拟用户反复跳跃),就像我只是多次按下空格键一样。@SkylerKing更新了我的Answare。如果你一直按空格键,它就会一直触发。这可能对你有用。看一下代码。在按住空格键的同时,它似乎在不断重复空格键,这正是我想要的,但我需要它转换为发送到我正在制作的游戏中的实际按键。因此,我考虑了更多,也许如果我为keyup添加一个EventListener以停止运行之前的函数,这行得通吗?我假设它将空格键发送到某种控制台(我对java不太了解),我需要它向我需要的游戏发送空格键(模拟用户反复跳跃)“就像我只是多次按下空格键一样。”SkylerKing更新了我的答案。如果你一直按空格键,它就会一直触发。这可能对你有用。看一下代码。在按住空格键的同时,它似乎在不断重复空格键,这正是我想要的,但我需要它转换为发送到我正在制作的游戏中的实际按键。因此,我考虑了更多,也许如果我为keyup添加一个EventListener以停止运行之前的函数,这样做行得通吗?只需要保留原始代码就行了吗?