JS屏蔽键盘、鼠标事件

上次浏览某个网站,想看下页面元素,按12发现没反应,邮件也没反应。一开始还误以为浏览器卡了。后来才发现是网站屏蔽了这些键盘以及鼠标事件。既然知道了原理,无非反其道而行之就可以实现,也就是把这些按键、鼠标事件屏蔽掉。

window.onload = function() {
    document.onkeydown = function() {
        var e = window.event || arguments[0];
        //屏蔽F12:按键码123
        if(e.keyCode == 123) {
            console.log('暂时不支持开发者模式!!');
            return false;
        //屏蔽Ctrl+Shift+I
        }else if((e.ctrlKey) && (e.shiftKey) && (e.keyCode == 73)){
            console.log('当前提示,本网站禁止审查元素');
            return false;
        //屏蔽Ctrl+U(火狐下查看网页源代码快捷键)
        }else if((e.ctrlKey) && (e.keyCode == 85)){
            console.log('本网站禁止使用审查元素')
            return false;
        //屏蔽Shift+F10
        }else if((e.shiftKey) && (e.keyCode == 121)){
            console.log('本网站禁止审查元素!');
            return false;
        //禁止保存页面:ctrl + s
        }else if(event.ctrlKey  &&  window.event.keyCode==83 ){ 
            console.log('本网站禁止保存文件!');
            return false;
        }
    };
    //屏蔽右键单击
    if (window.Event)
        document.captureEvents(Event.MOUSEUP);
    function nocontextmenu()
    {
        event.cancelBubble = true
        event.returnValue = false;
        return false;
    }
    function norightclick(e)
    {if (window.Event)
    {
        if (e.which == 2 || e.which == 3)
            return false;
    }
    else
        if (event.button == 2 || event.button == 3)
        {
            event.cancelBubble = true
            event.returnValue = false;
            return false;
        }
    }
    document.oncontextmenu = nocontextmenu; // for IE5+
    document.onmousedown = norightclick; // for all others
}

字母和数字键的键码值(keyCode)
按键键码按键键码按键键码按键键码
A65J74S83149
B66K75T84250
C67L76U85351
D68M77V86452
E69N78W87553
F70O79X88654
G71P80Y89755
H72Q81Z90856
I73R82048957

   

数字键盘上的键的键码值(keyCode)功能键键码值(keyCode)
按键键码按键键码按键键码按键键码
0968104F1112F7118
1979105F2113F8119
298*106F3114F9120
399+107F4115F10121
4100Enter108F5116F11122
5101-109F6117F12123
6102.110    
7103/111    

   

控制键键码值(keyCode)
按键键码按键键码按键键码按键键码
BackSpace8Esc27Right Arrow39-_189
Tab9Spacebar32Dw Arrow40.>190
Clear12Page Up33Insert45/?191
Enter13Page Down34Delete46`~192
Shift16End35Num Lock144[{219
Control17Home36;:186/|220
Alt18Left Arrow37=+187]}221
Cape Lock20Up Arrow38,<188'"222

多媒体键码值(keyCode)
按键键码按键键码按键键码按键键码
音量加175      
音量减174      
停止179      
静音173      
浏览器172      
邮件180      
搜索170      
收藏171      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值