Skip to content Skip to sidebar Skip to footer

Keydown On Body?

I want to get alerted whenever I press a key. I've tried: $('body').live('keyup', function() { alert('testing'); }); But it doesn't work, could it be because of the selector?

Solution 1:

Try using $("html") or $("*") instead of $("body"). In order for the keyUp event on body to fire, the body node or one of its children must be focused. You can accomplish this in your example by adding a text input and focusing the mouse to that input. What you really want is to capture any key press, so $("html") should work.

Edit: I think your example might work, but in any case, to run the logic conditionally you might try this:

if ($(document.body).is(".focusOnKeypress")) {
   $("html").live(...);
}

Or, I think this will also work:

$("body:not(.noFocusOnKeypress)").parent("html").live(...);

Solution 2:

Just listen to the window!

$(window).keydown(function(event){
    alert(event.keyCode);
});

Solution 3:

I tried this code. This is working fine.

$('body').on('keyup', function() {
     alert('testing');
});

Solution 4:

It does not work because your page does not have focus.. you need to click on the page first and it will work..

alternatively you could forcibly set the focus to an input element and thus bring focus to the page..

$(function(){ $('input_selector_here').focus(); });

Solution 5:

Hope this will help.

$(document.body).on('keyup', function (e) {
    alert('In');
}):

Post a Comment for "Keydown On Body?"