移除'空闲时间'同时不停地按一个键
remove 'idle time' while keeping on pressing a key
当你写的东西,你一直按一个键(让我们说'a'),它会写下'a',然后你的电脑将等待大约200ms('空闲时间'),只有这样,它会大量地写'a',只要你持有的键。出于各种原因(主要是游戏控制),我想要删除"空闲时间",我该怎么做?
你只需要在按键被按下时开始计时循环,然后在按键离开时结束计时循环:我是这样做的:
获取一个知道键是否为下的变量,然后为你按下的键添加一个keydown事件监听器,在变量为假时触发定时循环函数,并添加一个keyup事件监听器,使变量为假,如下所示:
document.addEventListener('keydown', function(e){if(!pressed)loop(e)});
function loop(e){
if(pressed) window.setTimeout(function(){loop(e), 20 /*just insert the ms between each loop*/};
//do stuff with the key, using the 'e' parameter;
}
document.addEventListener('keyup', function(e){pressed=false});
当然,您必须为每个键都这样做,但您可以使用自动生成的数组,并且由于您主要将其用于游戏控制,我认为您不需要很多这些东西,所以这应该很适合您
相关文章:
- 如何在一个时间间隔后追加新的更新
- 转换一个时间(字符串),例如1:00 IST到另一个时区(比如PST)
- 在 rails / html / js 中创建一个时间轴
- 给定一个时间戳,如何按天/周/月显示时间
- jQuery:创建一个循环,首先需要一个时间间隔,然后更改为另一个时间间隔
- 编写一个时间函数,在游戏中清除倒计时并重新启动
- 在每行PHP上调用一个时间戳函数
- xd_soft日期时间选择器在只选择一个时间值时高亮显示多个时间值
- 使用moment.js、js或Jquery,在一个时间范围内打开一个功能
- 使用flipclock.js自动每日重置计数器到一个时间
- 创建一个时间间隔,使函数在JavaScript中随机时间运行
- 在javascript中制作一个时间计数器
- 我如何得到模态窗口弹出时,我选择一个时间槽fullCalendar
- 修改Meteor-React待办事项列表示例,显示一个时间范围内创建的列表项
- 列出一个HTML段落< >在一个时间效应
- 如何让一个消息弹出(悬停)当玩家击中一个时间瞬间
- 需要做多个搜索在一个时间与开始字符这是在自动完成搜索
- 我如何处理日期在javascript中,当它不断附加一个时间值
- 我如何使一个时间滑块显示网站存档在WordPress
- 褪色的9个缩略图在随机1在一个时间使用jquery画廊