这段代码有什么问题?为什么 console.log(evt) 返回“undefined”?
这是我的代码:
var documentKeydown = (evt)=>{
console.log(evt);
if (counter == 0) {
XWhenDown = currentX;
YWhenDown = currentY;
document.onkeyup = documentKeyup();
switch (evt.keyCode) {
case 37 : currentX -= 10; break;
case 38 : currentY -= 10; break;
case 39 : currentX += 10; break;
case 40 : currentY += 10; break;
}
animationTick = Ticker.add(animation);
}
}
document.onkeydown = documentKeydown();
最佳答案
你应该只在事件发生时调用你的函数:
var documentKeydown = ()=>{
console.log(event);
if (counter == 0) {
XWhenDown = currentX;
YWhenDown = currentY;
document.onkeyup = documentKeyup();
switch (event.keyCode) {
case 37 : currentX -= 10; break;
case 38 : currentY -= 10; break;
case 39 : currentX += 10; break;
case 40 : currentY += 10; break;
}
animationTick = Ticker.add(animation);
}
}
document.addEventListener('keydown', documentKeydown) ;
关于javascript - js keybourd 函数 - 事件未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59234264/