如何让我的javascript函数等待用户按键盘上的键继续脚本?我正在使用提示让玩家在网格上移动,但我想只使用按键。
此代码不会等待用户按键,而是直接进入提示。
this.onkeypress = function(evt) {
evt = evt || window.event;
var charCode = evt.keyCode || evt.which;
var option = String.fromCharCode(charCode);
alert(option);
};
var option = prompt("You can move tiping: \na(left)\nd(right)\nw(up)\ns(down).", "");
hero_can_move = true;
if(option=='w' || option =='a' || option=='d' || option=='s'){
move(option);
}
答案 0 :(得分:0)
我建议你使用一个函数将key和event绑定到按键
密钥代码:
左箭头37
向上箭头38
右箭头39
向下箭头40
//how it would look in jquery
$(window).on("keypress", function( key) {
if(key == 37){ move("left");}
if(key == 38){move("up");}
if(key == 39){move("right");}
if(key == 40){move("down");}
});
将事件绑定到窗口,这样当您单击按钮时,窗口将侦听。除非按下满足if()标准的键,否则不会发生任何事情。
(注意,每次按下一个键,窗口按键功能都将触发并测试所有包含的内容。有些人会考虑这种不好的做法,但老实说,我认为它甚至不是特别糟糕的表现在任何现代计算机)