因此,当按下右箭头时,我在屏幕上的 objectx、objecty 和增量 objectx 处绘制一个对象,将对象向右移动。我遇到的问题是,如果我按住右箭头键,它会增加一次,暂停,然后重复增加。我的问题是为什么要这样做,以及如何在没有初始停顿的情况下使对象流畅地移动?
$(window).keydown(function(e) {
if(e.keyCode == 39) {
objectx++;
}
}
Run Code Online (Sandbox Code Playgroud) 这是我的问题:http : //testepi.kvalitne.cz/test/
我不想要按键和方块移动之间的延迟。我也想知道如何对角移动(同时按下两个键)。
我的代码:
$(function(){
document.addEventListener("keydown", move, false);
var x = 0;
var y = 0;
function move(event){
if(event.keyCode==37){
x -= 10;
$("#square").css("left", x);
}
if(event.keyCode==39){
x += 10;
$("#square").css("left", x);
}
if(event.keyCode==38){
y -= 10;
$("#square").css("top", y);
}
if(event.keyCode==40){
y += 10;
$("#square").css("top", y);
}
}
});
Run Code Online (Sandbox Code Playgroud)