一本正经

或许我们都养成了个“坏习惯”,在浏览器中碰到陌生的东西时,喜欢右击检查或按F12。然而,有时候却不能如你所愿 :T (此时你很可能正在尝试…并气急败坏…偷笑)

方式一

基础操作,能阻止大部分的使用者

//禁用F12
    document.onkeydown = function (e) {
      var keyCode = e.keyCode || e.which || e.charCode;
      if (keyCode == 123) {
        e.returnValue = false;
      }
    }
//禁用鼠标右击检查
    document.oncontextmenu = function () {
      return false;
    }

如果只想在输入框中使用鼠标右击,则可以:

    //除输入框之外禁用鼠标右击检查 
    document.oncontextmenu = function (e) {
        try {
            var the = e.srcElement;
            //大写才能识别成功
            if (the.tagName == "INPUT" || the.tagName == "TEXTAREA") {
                return true;
            }
            return false;
        } catch (error) {
            return false;
        }
    }

方式二

进阶操作,终极杀招,能阻止极端的使用者

//禁用F12及Ctrl + Shift  + i/j/c
    document.onkeydown = function (e) {
      var keyCode = e.keyCode || e.which || e.charCode;
        //若通过禁用字母,则很可能影响评论功能
      if (keyCode == 123 || (e.ctrlKey && e.shiftKey)) {
        e.returnValue = false;
      }
    }
//禁用鼠标右击检查
    document.oncontextmenu = function () {
      return false;
    }

BTW

什么终极杀招呀,直接复制当前网址,在新标签页上提前打开控制台,然后贴上刚才复制的网址即可,简单粗暴,无懈可击;又或者,当前页面若存在广告,则可以作为右击检查的入口,因为外部的js脚本无法对iframe的内部生效。So,以上根本没啥卵用,唯一的好处就是可以防止误触操作,但为了方便自己,只使用了方式一。我当时遇到的时候,也跟你一样气急败坏。其实,这只是某个闲人的恶作剧而已 : )


这个站屏蔽源码查看做得挺绝的,可以搞它 😧 ,它甚至让我的浏览器卡死在这个标签页上(我很怀疑它做了些无限循环的操作),只能通过强制杀死进程才关掉了这个页面…


the end~

相关资料

  1. js键盘按钮keyCode及示例大全
  2. Web API 接口参考:KeyboardEvent.charCode
留言评论
推荐阅读
  • 最新图解并详细说明GitHub中12条许可证

    概述这12条开源协议/许可证都包含(相当于Unlicense): 免责声明:即作者不承担使用后所造成的任何后果,不提供资料的可用性...

    最新图解并详细说明GitHub中12条许可证
  • README文件中的徽标该如何使用

    自定义徽标徽标由左右两块方框所组成,左边显示标签,右边显示该标签所要表达的信息。 终端模式终端模式是真正的让用户自定义徽标,只需用户提...

    README文件中的徽标该如何使用
  • 规范书写GitHub中的README

    记住:是文档,而不是代码,定义了这是一个什么项目。 概述 编写并规范README自述文件的好处 节约你我他的时间...

    规范书写GitHub中的README