以前,我曾提過一個問題, 網站如何檢測到是否開啓開發者工具?html
問題很火,是5月份問題top1, 後面管理員給我刪除掉了...chrome
在此, 把這問題及解決方法記錄下來.工具
監聽鍵盤事件F12之類的方法, 不記錄, 由於剛開始你們都是這麼玩的。網站
chrome72如下code
var im = new Image(); Object.defineProperty(im, 'id', { get: function() { window.location.href = "http://106.53.103.200:8082/error.html" blast(); } }); console.log(im); //谷歌最新版失效
原理就是chrome在打開控制檯的時候會讀取頁面上全部的id元素.htm
let num = 0; //谷歌最新版有效 var devtools = new Date(); devtools.toString = function() { num++; if (num > 1) { window.location.href = "http://106.53.103.200:8082/error.html" blast(); } } console.log('', devtools);
只有打開控制檯,纔會執行console打印方法, 由此控制。事件
以上兩個方法,堪稱無解,任何人都打不開控制檯, 兩個方法都是利用了數據劫持,或者重寫一些核心方法而達到的,值得思考。開發