有没有办法阻止IE中键盘快捷键的传播?

时间:2013-12-18 08:42:41

标签: javascript internet-explorer

以下是我正在使用的代码以及我已经尝试过的方法,它们适用于Chrome和Firefox:

$j(document).on('keydown', function (e) {
    if(e.keyCode == 80) {
        if(ctrl_key == 'yes') {
            do_something();

            e.preventDefault();
            e.stopPropagation();    
            e.cancelBubble = true;      

        }
    }
});

$j(document).on('keypress keyup', function (e) {
if(e.keyCode == 80) {
    if(ctrl_key == 'yes') {
        e.preventDefault();
        e.stopPropagation();    
        e.cancelBubble = true;      
    }
}
});

这是用于打印功能(ctrl + p)

有没有办法阻止这种行为?

1 个答案:

答案 0 :(得分:2)

跨浏览器方法:

$j(document).on('keydown', function (e) {
    var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
    if(e.ctrlKey && key == 80) {
        e.preventDefault();
        e.stopPropagation();  
        alert("CTRL + P pressed");
        return false;
    }
});

您需要选择“文档”,在测试http://jsfiddle.net/PTauw/99/之前单击渲染面板或编辑框中