zoukankan      html  css  js  c++  java
  • 利用Javascript检测开发者工具Devtools是否打开

    function checkDevTools(options) {
    const isFF = ~navigator.userAgent.indexOf("Firefox");
    let toTest = '';
    if (isFF) {
    toTest = /./;
    toTest.toString = function() {
    options.opened();
    }
    } else {
    toTest = new Image();
    toTest.__defineGetter__('id', function() {
    options.opened();
    });
    }
    setInterval(function() {
    options.offed();
    console.log(toTest);
    console.clear && console.clear();
    }, 1000);
    }
    
    checkDevTools({
    opened: function() {
    document.body.innerHTML = 'Dev Tools is on';
    },
    offed: function() {
    document.body.innerHTML = 'Dev Tools is off';
    }
    });


    通过此代码可以监听到是否打开开发者调试窗口。如果打开那么可以移除一些敏感信息,或者防爬虫设定。

    后续,又有一种兼容性较好的版本

    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();
     


    ————————————————
    版权声明:本文为CSDN博主「SineyCoder」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/a568283992/article/details/103022334

  • 相关阅读:
    vgcreate语法
    lsmod语法
    lvm语法2
    lvm语法
    mount语法
    fdisk语法
    mdadm语法
    ln语法
    mknod语法
    黑客常用dos-cmd命令
  • 原文地址:https://www.cnblogs.com/ygunoil/p/12505664.html
Copyright © 2011-2022 走看看