禁止用户打开控制台调试代码

Posted 5-clay

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了禁止用户打开控制台调试代码相关的知识,希望对你有一定的参考价值。

1,禁用F12,阻止默认行为

window.onkeydown=window.onkeyup=window.onkeypress=function(event){

if(event.keyCode==123){

    event.prevnentDefault()

    window.event.returnValue=false;

  }

 

2,禁用右键

window.oncontextmenu=function(event){

  event.preventDefault();

  return false;

}

3,禁用预先调试

除了打开F12,右键,用户还有可能先打开任意网页的F12,然后在地址栏输入网址,或者使用快捷键ctrl+shift+i打开控制台

所以对于这两种情况,我们可以通过  比较屏幕window.outerWidth和页面可见区域window.innerWidth的差距判断是否打开控制台;

var threshold=160;

setInterval(function(){

if(window.outerWidth-window.innerWidth>threshold || window.outerHeight-window.innerHeight>threshold){

  //打开控制台就刷新页面;

    window.location.reload()

  }

})  

 

以上是关于禁止用户打开控制台调试代码的主要内容,如果未能解决你的问题,请参考以下文章

JSJavaScript禁止右键菜单和F12打开控制台看代码

关于eclipse调试时程序控制台不能自动打开

调试通过 Chrome 控制台添加的脚本

严格模式是不是禁止语句级函数声明?

phpstorm如何直接在控制台中调试不用每次都打开浏览器?

AWS IAM-如何禁止用户通过控制台进行更改,但允许通过CLI更改API