我正在尝试使用JavaScript来通过两个键使一个div上下移动。我的想法是,在某个键按下的同时,函数循环并每次将值添加到div的“top”样式中。基本函数可用,但我无法使其循环,并且无法让任何内容响应键按下事件。
在JavaScript中很难找到有关按键处理的信息,似乎大多数人使用jQuery来处理它。
我的do-while循环使用是否正确?是否有更好的方法来处理keydown和keyup事件?
这是我的代码:
在JavaScript中很难找到有关按键处理的信息,似乎大多数人使用jQuery来处理它。
我的do-while循环使用是否正确?是否有更好的方法来处理keydown和keyup事件?
这是我的代码:
var x = 0;
console.log(x);
function player1MoveDown() {
var value = document.getElementById("player1").style.top;
value = value.replace("%", "");
value = parseInt(value);
value = value + 1;
value = value + "%";
document.getElementById("player1").style.top = value;
console.log(value);
} //moves paddle down; adds to paddle's 'top' style value
function player1MoveSetting() {
x = 1;
do {
setInterval(player1MoveDown(), 3000);
}
while (x == 1);
console.log(x);
} //paddle moves while x=1; runs player1MoveDown function every 3 seconds
function player1Stop() {
x = 0;
}
以下是相关的HTML代码:
<div class="paddle" id="player1" style="top:1%" onkeydown="player1MoveSetting()" onkeyup="player1Stop()"></div>
requestAnimationFrame
而不是setInterval
。 - Mike 'Pomax' Kamermans