如何检查是否打开了Chrome Dev工具?

3

请参考查找Chrome控制台是否已打开获取可行的解决方案。 - Sindre Sorhus
2个回答

4

谷歌是你的好朋友

function isInspectOpen()
{
    console.profile(); 
    console.profileEnd(); 
    if (console.clear) console.clear();
    return console.profiles.length > 0;
}

这个问题中得知:

如果用户打开了开发者工具,此函数将返回true。

编辑

回应您的评论:

$('#header').click(alert(isInspectOpen()))

jQUery的格式不正确,请尝试:

$('#header').click(function(){
   alert(isInspectOpen());
});

嗯,调用 isInspectOpen() 函数没问题 :) (即它返回 true)。但是如果我设置 setTimeout('alert(isInspectOpen())', 10000) 并关闭 DevTools,10 秒后仍然会弹出 true。有什么想法吗?还有其他测试该函数的方法吗? - static
不要使用超时来测试这个,尝试使用工具打开进行测试,然后再关闭它。 - Scott Selby
有没有什么办法可以在 DevTools 关闭的情况下调用 alert(isInspectOpen())(或其他通知方式,例如更改某些 div 的文本)?$('#header').click(alert(isInspectOpen())) 对我也不起作用。 - static
2
请注意,我们已从 Blink 中删除了危险的 console.profiles:https://src.chromium.org/viewvc/blink?revision=151136&view=revision,因此该技巧在 Chromium 上将无法使用。 - Yury Semikhatsky

-2

记录某事。我需要找出这个东西是如何工作的(在浏览器中显示它的工作方式,例如它触发了哪个事件/改变了哪个状态),以及如何做到这一点,这是一个问题 ;) 当然,log4js是一个很好的工具来显示事件已经发生。 - static

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接