【发布时间】:2014-03-16 05:28:11
【问题描述】:
我正在开发一款游戏。我的事件处理程序使用的是 JQuery,游戏是用 JavaScript 编写的,我一直在尝试找到设置时间的最佳方法,然后才能从我的事件侦听器再次调用方法。
这是我当前的事件监听器:
function shootingHandler(key){
switch(parseInt(key.which, 10)){
case UpArrow:
case Spacebar:
setTimeout(player.shoot(), 1000);
break;
}
}
setTimeout() 方法对此不起作用,因为它只是调用该方法,然后等待指定的时间,然后触发它。所以在我的示例代码中,我试图让player 每秒只能开枪,但如果玩家按住空格键,它会自动开枪数千次。
有什么好的方法可以让一个方法一次只能被调用一次,每隔几秒左右只能调用一次?
【问题讨论】:
标签: javascript jquery events queue keypress