单击Ctrl或Shift时禁用短按键

Joh*_*yne 3 jquery keycode

我试图在单击某些键(Ctrl/ Shift)时禁用所有短键.

这是我的快速片段:

$(document).keyup(function(b) {     

    if (b.keyCode == 16) {return false;}
    if (b.keyCode == 17) {return false;}

    $("body").append(b.keyCode + " ");


});
Run Code Online (Sandbox Code Playgroud)

当您单击Shift或时Click,不会打印keyCode编号,但如果单击Shift+Any Letter,则会打印该字母的keyCode .

示例:http://jsfiddle.net/javascript/K4sCx/7/

Ste*_*fan 8

您可以确定在事件对象中是否按下了"特殊键".

检测事件对象中的specizal键:

if (evtobj.altKey || evtobj.ctrlKey || evtobj.shiftKey)
alert("you pressed one of the 'Alt', 'Ctrl', or 'Shift' keys")
}
Run Code Online (Sandbox Code Playgroud)

代码示例:

$(document).keyup(function(evtobj) {     
                if (!(evtobj.altKey || evtobj.ctrlKey || evtobj.shiftKey)){
    if (evtobj.keyCode == 16) {return false;}
                    if (evtobj.keyCode == 17) {return false;}
    $("body").append(evtobj.keyCode + " ");
                }
});
Run Code Online (Sandbox Code Playgroud)

提琴手


小智 5

    $(window).on('keydown',function(event)
    {
    if(event.keyCode==123)
    {
        alert('Entered F12');
        return false;
    }
    else if(event.ctrlKey && event.shiftKey && event.keyCode==73)
    {
        alert('Entered ctrl+shift+i')
        return false;  //Prevent from ctrl+shift+i
    }
    else if(event.ctrlKey && event.keyCode==73)
    {
        alert('Entered ctrl+shift+i')
        return false;  //Prevent from ctrl+shift+i
    }
});
$(document).on("contextmenu",function(e)
{
alert('Right Click Not Allowed')
e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)

Chrome、Firefox、IE 和所有浏览器都支持 control+shift+i & F12 & 右键单击​​。