JBu*_*ace 5 javascript html5 html5-canvas
我在互联网上提供了一些基本的Pong代码并试图添加按键,代码在这里:http://cssdeck.com/labs/ping-pong-game-tutorial-with-html5-canvas-and-sounds
我补充说:
canvas.addEventListener("keydown", handlekeydown, true);
Run Code Online (Sandbox Code Playgroud)
在此现有代码之后:
canvas.addEventListener("mousemove", trackPosition, true);
canvas.addEventListener("mousedown", btnClick, true);
Run Code Online (Sandbox Code Playgroud)
我还补充说:
function handlekeydown(e) {
console.log("debug");
console.log("keycode: "+e.keyCode);
}
Run Code Online (Sandbox Code Playgroud)
但即使我尝试按下各种键,也不会调用该函数.为什么是这样?我很确定Canvas是焦点.
Jea*_*nço 17
您无法将keydown
事件分配给画布,因为您无法使用光标聚焦画布.您需要将事件分配给窗口:
window.addEventListener("keydown", handle, true);
Run Code Online (Sandbox Code Playgroud)