之前写过一篇文章《Javascript检测开发者工具Devtools是否打开》,主要是讲如何通过js来检测开发者工具是否打开,防止别人恶意调试我们的代码,那段代码也是查了蛮多资料整理出来的,当时可以兼容chrome,firefox,ie,但是随着浏览器版本的更新,已经基本上没有作用了,最近我发现还是有蛮多人去浏览那篇文章,所以这里再放出一段代码,算是个升级版吧,之前的版本里在firefox上还有有限制的,下面提供的这个版本我测试过通杀现在的chrome 69,firefox,IE,也不存在之前firefox上存在的问题了,下面直接贴出代码:

setInterval(function() {check()
}, 4000);
var check = function() {function doCheck(a) {if (("" + a/a)["length"] !== 1 || a % 20 === 0) {(function() {}["constructor"]("debugger")())} else {(function() {}["constructor"]("debugger")())}doCheck(++a)} try {doCheck(0)} catch (err) {}
};
check();

这段代码是什么原理,说实话我没搞太懂,也去请教过一些大佬,都不能完全说出其中的原理,如果有懂的朋友请一定不吝赐教,虽然不知道原理,但是效果的确是杠杠的,这是本人从huichan网站上截取的,这里不得不佩服那些做huichan的,太强大。由于以前代码是加密的,对于其中一些方法的命名我解密时都是随意取的,不喜勿喷。

当然这种伎俩对于熟悉调试的开发者来说,完全没有阻碍,但毕竟也能防范住一小批不怀好意的人,幸幸苦苦写出来的代码被别人悄悄的就搬走了,确实挺恼人的,但仅仅靠这么一个防调试的代码是不够的,我们还需要做的还有很多,比如一些基本的js的压缩混淆加密等等,后期本人会整理一些js加密混淆以及解密方面的文章,敬请期待...

js检测开发者工具Devtools是否打开防调试相关推荐

  1. js检测开发者工具是否打开 防止别人调试代码

    网站如何检测到是否开启开发者工具?这里不是指监听键盘事件F12之类的方法,而是通过浏览器右侧点击打开开发者工具. 现在介绍2个方法,非常管用,可以检测到你是否开启了控制台程序,可以算是JavaScri ...

  2. 屏幕分辨率测试工具(舍弃)---chrome开发者工具devTools(强烈建议系统学习)

    2019-01-25 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://w ...

  3. 微信开发者工具安装后打开黑屏如何解决?

    第一步,找到目录 这里每个人的电脑不同,目录也不同.教你万能的方法,你可以打开C盘搜索 "AppData",直接查看"微信开发者工具"目录,找最新升级日期,找到 ...

  4. 微信分享自定义标题和图片,开发者工具没问题,真机调试失败

    昨天亲身经历,微信分享开发者工具调试没问题,但是真机调试失败,说明配置是没问题的,历经一天发现是缓存的问题 解决方案: 删除掉微信进程后,缓存没有被彻底清除 安卓手机打开 debugtbs.qq.co ...

  5. Python 自动化 - 浏览器chrome打开F12开发者工具自动Paused in debugger调试导致无法查看网站资源问题原因及解决方法,javascript反调试问题处理实例演示

    这是 JavaScript 常用的手法用于网站方保护源码不被大家轻易的查看到,会一直循环调用 function anonymous() {debugger} 方法使网页始终处于调试状态,干扰大家查看网 ...

  6. 在微信开发者工具中用本地IP地址调试JSSDK(微信公众号网页)

    网上有很多本地调试jssdk的文档,发现都不全,或不好用.有的说用内网穿透,有的说改好发到线上测试服调.这些都很麻烦,还不一定能签名成功.经过我多天努力,摸出了一套本地开发工具+微信测试号的方法. 效 ...

  7. 三星 i9500/Galaxy S4开发者选项开启方式(打开USB调试的方法)

    首先说我手上的是移动版,I9508,其他国行和水货版本的不知道是不是隐藏了,如果隐藏了可以试试是否通用. 进入关于手机,狂点"内部版本号",一共需要三个步骤,点到开发者选项出来就行 ...

  8. 魅族手机魅蓝note处于开发者模式,如何打开USB调试

    http://jingyan.baidu.com/article/0aa223755afadd88cc0d641e.html

  9. 微信开发者工具 微信小程序中调试器console界面不显示跑出的代码结果的问题解决

    最初的console 界面可能以下这样的, 当ctrl + s 保存并跑了一段代码,但是不显示结果. 解决办法就是把旁边的设置按钮 (蓝色的小齿轮) 点击一下就可以切换界面并看到跑代码的结果了 点击一 ...

最新文章

  1. 二叉树:路径之和 Path Sum
  2. common lisp里的几个操作符
  3. 利用frp进行内网穿透
  4. Java移位运算之算术右移位
  5. WOrd ,excel实现打印功能
  6. 返回函数之循环变量问题
  7. 清洁责任–摆脱均等,compareTo和toString
  8. 《OpenCL异构计算》新版中译本派送中!
  9. c语言乘法口诀表的流程图_例18:C语言编程实现九九乘法表
  10. 嵌入式操作系统内核原理和开发(信号量)
  11. 漫谈 MinIO 集群扩容方法
  12. 《算法图解》——广度优先探索与队列
  13. idea原生ajax数据处理(增删改查)
  14. 帮同学的忙,随意写了个课程设计(关于循环双向列表)
  15. ubuntu安装vasp_VASP 软件在ubuntu10.04下的安装过程
  16. 关于 c++ opencv [ INFO:0] global c:\build\master_winpack-build-win64-vc15\***
  17. 华三H3C交换机如何配置和使用telnet远程登录设备
  18. 三层交换机和路由器的区别
  19. 变革管理书籍推荐:《组织变革必读12篇》
  20. 运用数学软件matlab求无穷积分,matlab积分的计算及其简单应用论文.doc

热门文章

  1. scala学习 之 环境搭建(一)
  2. Java多线程之迭代器问题(四)
  3. leetcode--133. 克隆图
  4. jQuery事件3——trigger触发事件
  5. 【详解】CSS阴影用法——Web前端系列学习笔记
  6. 【简便解法】1083 是否存在相等的差 (20分)_14行代码AC
  7. Windows使用msi安装MySQL安装教程
  8. me)不支持html,属于me的vue练习(参考菜鸟教程).html
  9. git add后取消_Python 命令行之旅:使用 click 实现 git 命令
  10. 改变能改变的,接受不能改变的