I'm trying to fire off an event when a certain key is pressed. It works fine with this code:
$(document).keypress(function(e){
switch(e.which){
case 96:$("a.quicklinks").trigger('click');
break;
}
But, if the user is in a form field, I'd like to disable this behavior. How do I test whether the user is typing in a form field to do this? Thanks.
$(document).keypress(function(e) {
if ($(e.target).is('input, textarea')) {
// event invoked from input or textarea
}
...
});
Maybe you can set a global var
var disable_keyevents = false;
$('textarea,input')
.focus(function() { disable_keyevents = true })
.blur(function() { disable_keyevents = true; });
then you just check the value of disable_keyevents in the $(document).keypress event before the switch.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With