addEventListener keyPress doesn't register key presses

You must use lowercase p in keyPress


The event name must be keypress - small p

window.addEventListener("keypress", myEventHandler, false);

Demo: Fiddle

Apart form that since you are using jQuery use a jQuery solution like

//no need to use dom ready since the event is added to window
$(window).keypress(function (e) {
    //use e.which
    var keyCode = e.which;
    console.log(e, keyCode, e.which)
    if (keyCode == 88) {
        console.log("You pressed W!");
        //alert("You pressed W!");
    }
})

Demo: Fiddle

event.which

The event.which property normalizes event.keyCode and event.charCode. It is recommended to watch event.which for keyboard key input. For more detail, read about event.charCode on the MDC.


You could always use this

$(document).keypress(function(e) {
    var keyCode = e.keyCode;

    if(keyCode == 87 || keyCode == 119){
        console.log("You pressed W!");
        alert("You pressed W!");
    }
});

And yes W is 87, w is 119. So check both

Tags:

Javascript