如何通过JavaScript检测IE 10上运行的开发者工具?

时间:2013-08-01 08:09:41

标签: javascript internet-explorer

如何通过JavaScript检测开发者工具在IE 10上运行?

我试过了:

if (console && console.log) {
   alert("Developer tools is running");
}

4 个答案:

答案 0 :(得分:1)

在IE 10中,您可以拨打

window.__IE_DEVTOOLBAR_CONSOLE_COMMAND_LINE

如果它是一个对象,则工具栏处于打开状态。 (注意:如果你之前在同一个'窗口'中打开了工具栏,它就会停留) 如果它是'未定义',则工具栏将关闭。

答案 1 :(得分:0)

在IE的早期版本和所有其他现代浏览器中,您无法判断开发人员工具或Web检查器是否已打开。我假设IE10也一样。

您可以使用以下方法检查浏览器是否支持控制台日志记录:

if ('console' in window) {
    if ('log' in console) {
        console.log('This will work.');
    }
}

IE8及更低版本可能不支持控制台日志记录,因此在您在代码中登录控制台之前检查它们是否正确是明智的。

答案 2 :(得分:0)

AFAIK真的不可能。 if( console.log )将检查console.log()是否为可用函数,因此它将返回true。

http://jsfiddle.net/cXBL9/

但当然,无论工具是否开放,这都无关紧要。

答案 3 :(得分:0)

正如Arbitter和Jazza已经说过的那样,这是不可能的。

对您来说可能没有用,但我能够与开发人员工具进行交互的唯一方法是使用JavaScript语句:

debugger;

如果使用Developer Tools进行调试,这将导致断点被击中。

参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/debugger?redirectlocale=en-US&redirectslug=JavaScript%2FReference%2FStatements%2Fdebugger