Disable Specific Function Key Using Jquery
I want to disable F8 key on my web page. Is there any way I can disable it using jquery or any associated plugins or just javascript?? Thanks in advance... :) blasteralfred
Solution 1:
Like this Disable F5 key in Safari 4
but using keyCode 119:
<script>var fn = function (e)
{
if (!e)
var e = window.event;
var keycode = e.keyCode;
if (e.which)
keycode = e.which;
var src = e.srcElement;
if (e.target)
src = e.target;
// 119 = F8if (119 == keycode)
{
alert('nope')
// Firefox and other non IE browsersif (e.preventDefault)
{
e.preventDefault();
e.stopPropagation();
}
// Internet Explorerelseif (e.keyCode)
{
e.keyCode = 0;
e.returnValue = false;
e.cancelBubble = true;
}
returnfalse;
}
}
document.onkeypress=document.onkeydown=document.onkeyup=fn
</script>
Solution 2:
Have you tried something like this?
$(document).keydown(function(e){ if(e.which === 119){ return false; } });
i created a jsfiddle sandbox where you can test it (works):
Solution 3:
The following code works on most browser whereas I haven't found any incompatible one yet. Let me know if it doesn't work.
The key is to re-map target event to any other original event of trivial key, i.e., make that Fn key behave as normal key.
$(document).bind("keydown", function (evt){
var keycode = (evt.keyCode?evt.keyCode:evt.charCode);
//alert(keycode);switch(keycode){
case119: //F8 key on Windows and most browserscase63243: //F8 key on Mac Safari
evt.preventDefault();
//Remapping event
evt.originalEvent.keyCode = 0;
returnfalse;
break;
}
});
Reference on key code and explanation on cross browser issue can be found here: quirksmode
Post a Comment for "Disable Specific Function Key Using Jquery"