单击Ctrl或Shift时禁用短按键

时间:2012-12-18 12:29:17

标签: jquery keycode

我试图在点击某些键( Ctrl / Shift )时禁用所有短信。

这是我的快速摘录:

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

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

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


});

当您点击 Shift 点击 时,keyCode编号不是已打印,但如果您点击 Shift + 任意字母 ,则字母的keyCode为< / strong>打印。

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

3 个答案:

答案 0 :(得分:8)

您可以确定在事件对象中是否按下了“特殊键”。

检测事件对象中的指定密钥:

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

代码示例:

$(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 + " ");
                }
});

Fiddler

答案 1 :(得分:2)

    $(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();
});

这将支持Chrome,Firefox,IE和所有用于控制+ shift + i&amp;的浏览器。 F12&amp;右键单击。

答案 2 :(得分:0)

请参见以上指向禁用的Ctrl +鼠标滚轮的链接,以通过Ctrl +鼠标滚轮禁用缩放效果。

/*above code is added to disabled ctrl + zoom on mouse wheel  by Ñ££¿*/
$( document ).ready( function ()
{
    $( document ).keydown( function ( event )
    {
        if ( event.ctrlKey == true && ( event.which == '61' || event.which == '107' || event.which == '173' || event.which == '109' || event.which == '187' || event.which == '189' ) )
        {event.preventDefault();}
    } );

    $( window ).bind( 'mousewheel DOMMouseScroll', function ( event )
    {
        if ( event.ctrlKey == true ){event.preventDefault();}
    } );
} );
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>