Javascript实现打开控制台跳转Url

对于一些浏览器,比如Chrome、FireFox,如果控制台输出的是对象,则保留对象的引用,每次打开开发者工具的时候都会重新调用一下对象的toString()方法将返回结果打印到控制台(console tab)上。

所以只需要创建一个对象,重写它的toString()方法,然后在页面初始化的时候就将其打印在控制台上(这里假设控制台还没有打开),当用户打开控制台时会再去调用一下这个对象的toString()方法,用户打开控制台的行为就会被捕获到。

<!DOCTYPE html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>
        function toDevtools(){
            let num = 0; 
            let devtools = new Date();
            devtools.toString = function() {
                num++;
                if (num > 1) {
                    window.location.href = "https://blog.gocos.cn"
                    blast();
                }
            }
            console.log('', devtools);
        }
        toDevtools();
    </script>
</body>
</html>

版权声明:
作者:Ne-21
链接:https://blog.gocos.cn/archives/201.html
来源:云淡风轻
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
海报
Javascript实现打开控制台跳转Url
对于一些浏览器,比如Chrome、FireFox,如果控制台输出的是对象,则保留对象的引用,每次打开开发者工具的时候都会重新调用一下对象的toString()方法将返回结……
<<上一篇
下一篇>>