1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
| <!DOCTYPE html> <html>
<body>
</body>
<script> // 定义当检测到控制台打开时执行的回调函数 function consoleOpenCallback() { // 如果控制台被打开,将页面重定向到指定网址 window.location.href = "https://www.baidu.com/s?word=%E5%B8%8C%E9%80%9F%E4%BA%91%E5%AE%98%E7%BD%91"; } !function () { const handler = setInterval(() => { const before = new Date(); // 这里的 debugger 语句用于触发时间检测 debugger; const after = new Date(); const cost = after.getTime() - before.getTime(); // 如果时间差大于 100 毫秒,认为控制台被打开 if (cost > 100) { consoleOpenCallback(); // 清除定时器 clearInterval(handler); } }, 10); }(); </script> <script disable-devtool-auto src='https://cdn.jsdelivr.net/npm/disable-devtool'></script> <script> var ConsoleManager = { onOpen: function () { // 当检测到控制台打开时执行的操作 }, onClose: function () { // 当检测到控制台关闭时执行的操作 }, init: function () { var self = this; var x = document.createElement('div'); var isOpening = false; var isOpened = false; // 使用 Object.defineProperty 定义元素属性的 getter Object.defineProperty(x, 'id', { get: function () { if (!isOpening) { // 当首次检测到可能打开控制台时执行 self.onOpen(); isOpening = true; } isOpened = true; } }); setInterval(function () { isOpened = false; console.info(x); console.clear(); if (!isOpened && isOpening) { // 当确认控制台已关闭时执行 self.onClose(); isOpening = false; } }, 10); } }; ConsoleManager.init(); // 当检测到控制台打开时,重定向页面 ConsoleManager.onOpen = function () { window.location.href = "https://www.baidu.com/s?word=%E5%B8%8C%E9%80%9F%E4%BA%91%E5%AE%98%E7%BD%91"; };
DisableDevtool({ ondevtoolopen: (type) => { const info = 'devtool opened!; type =' + type; } });
document.addEventListener('keydown', function (event) { // 如果按下的键是与打开开发者工具相关的快捷键组合,阻止默认行为并返回 false if (event.keyCode === 123 || (event.ctrlKey && event.shiftKey && event.keyCode === 73) || (event.ctrlKey && event.shiftKey && event.keyCode === 74) || (event.ctrlKey && event.shiftKey && event.keyCode === 75) || (event.ctrlKey && event.shiftKey && event.keyCode === 67) || (event.metaKey && event.altKey && event.keyCode === 73) || (event.metaKey && event.altKey && event.keyCode === 67) || (event.metaKey && event.altKey && event.keyCode === 74) || (event.metaKey && event.altKey && event.keyCode === 75)) { event.preventDefault(); return false; } }, false);
document.addEventListener('contextmenu', function (event) { // 禁用鼠标右键菜单 event.preventDefault(); }); </script>
</html>
|