[英]keydown is not working when using addEventListener on Javascript
I am trying to use "keydown" as getEventListener in my little canvas game.But it downst work;我正在尝试在我的小 canvas 游戏中使用“keydown”作为 getEventListener。但它不起作用; I am just trying to move my object with keydown.
我只是想用 keydown 移动我的 object。
<script>
var tuval = document.getElementById("tuval");
var cizim = tuval.getContext("2d");
tuval.addEventListener('keydown',keypress);
function keypress(e){
if (e.keyCode === 37){
dx = dx * -1;}
}
var en = tuval.width;
var boy = tuval.height;
var x = en/2;
var y = boy/2;
var dx = 2;
var dy = 4;
function ziplayantop() {
temizle();
cizim.beginPath();
cizim.arc(x,y,10,0,2*Math.PI);
cizim.closePath();
cizim.fillStyle="#ff0000";
x = x + dx;
y = y + dy;
cizim.fill();
if (x>en-5||x < 0 ) {
dx = -1 * dx;
}
if (y>boy-5||y < 0) {
dy = -1 * dy;
}
if (tiklama) {
dx = -1 * dx;
dy = -1 * dy;
}
}
function temizle(){
cizim.beginPath();
cizim.fillStyle="#ffffff";
cizim.fillRect(0,0,tuval.width,tuval.height);
cizim.closePath();
cizim.fill();
}
setInterval(ziplayantop,50);
</script>
It works when i replace "keydown" with "clik" like this way;当我像这样用“clik”替换“keydown”时它会起作用;
tuval.addEventListener('click',keypress);
function keypress(){
dx = dx * -1;
}
Could you please help me on this?你能帮我解决这个问题吗? Thanks
谢谢
be informed that you can't bind keydow
directly to the canvas..bind it to the entire window instead被告知您不能将
keydow
直接绑定到 canvas.. 而是将其绑定到整个window
window.addEventListener("keydown", function, false);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.