Javascript 如何检查Chrome开发工具是否已打开?
我在codeschool.com(discover devtools:)上的教程中发现,有可能检查Chrome开发者工具是否打开?如何检查(cmd+alt+i)按下时的状态/获取事件?您可以尝试log4js或类似的日志框架。Javascript 如何检查Chrome开发工具是否已打开?,javascript,google-chrome,google-chrome-devtools,dom-events,Javascript,Google Chrome,Google Chrome Devtools,Dom Events,我在codeschool.com(discover devtools:)上的教程中发现,有可能检查Chrome开发者工具是否打开?如何检查(cmd+alt+i)按下时的状态/获取事件?您可以尝试log4js或类似的日志框架。 您的代码对特定浏览器的依赖性会降低。谷歌是您的朋友 function isInspectOpen() { console.profile(); console.profileEnd(); if (console.clear) console.c
您的代码对特定浏览器的依赖性会降低。谷歌是您的朋友
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());
});
记录smth。我需要弄清楚这是怎么回事。工作(在浏览器中显示其工作,例如,它触发了哪个事件/它更改了哪个状态),以及如何执行这是一个问题;)当然,log4js是显示事件发生的一件好事dhm,调用
isInspectOpen()
工作正常:)(即它返回true
)。但是如果我设置了setTimeout('alert(isInspectOpen()),10000)
并在10秒后关闭DevTools,它会发出警报true
。知道为什么吗?如何以另一种方式测试函数?不要使用超时来测试此功能,尝试在打开工具的情况下进行测试,然后在关闭DevTools的情况下如何调用警报(isInspectOpen())
(或其他通知方式,例如更改某些div
)的文本<代码>$(“#标题”)。单击(警报(isInspectOpen())对我不起作用neither@static-更新答案请注意,我们从Blink中删除了危险的console.profiles:因此,该技巧不再适用于Chromium。有关有效的解决方案,请参阅。