当我使用此代码点击箭头键时,我试图将div
与班级player
一起向上和向下移动:
的JavaScript
var playerPosition = 0;
window.onkeyup = function(e) {
var key = e.keyCode ? e.keyCode : e.which;
if(key = 38) {
playerPosition += 10;
} else if(key = 40) {
playerPosition -= 10;
}
var players = document.getElementsByClassName('player');
for(var i = 0; i < players.length; i++)
players[i].style.marginTop = playerPosition+"px";
}
问题是当我按任意键时div
发生故障!
第二个问题,即div的移动并不顺畅
答案 0 :(得分:2)
您正在调用错误的运营商,而您正在尝试评估=
而不是===
。 (仅供参考,除非您希望按下时div
向上移动,否则可能会反转按键)因为它不顺畅,因为您正在触发功能onkeyup
表示用户必须在移动触发之前释放键。请改用onkeydown
,以便用户按住该键并使其运行更顺畅: