I'm new to JavaScript and I'm having a problem using the "keypress" event; I'm currently making a small jumping script test, and both "keydown" and "keyup" events work, but not the "keypress" (I tried debugging using console.log() right after the event occurs but nothing shows up when pressing a key).
Here is my window.onload function (where I add my event listeners):
window.onload = function()
{
canvas = document.getElementById('gameCanvas');
ctx = canvas.getContext('2d');
init();
setInterval(function()
{
tick();
render();
}, 1000/FPS
);
// listeners
window.addEventListener("keypress", function(evt)
{
if (evt.defaultPrevented)
{
return;
}
switch(evt.keyCode)
{
case 38:
player.jump();
break;
default:
return;
}
}
);
window.addEventListener("keydown", function(evt)
{
if (evt.defaultPrevented)
{
return;
}
switch(evt.keyCode)
{
case 37:
player.moveLeft();
break;
case 39:
player.moveRight();
break;
default:
return;
}
}
);
window.addEventListener("keyup", function(evt)
{
if (evt.defaultPrevented)
{
return;
}
switch(evt.keyCode)
{
case 37:
case 39:
player.stop();
break;
default:
return;
}
}
);
}
Thanks for helping!