我正在使用这个小脚本来查找Firebug是否打开:
if (window.console && window.console.firebug) {
//is open
};
而且效果很好。现在,我正在搜索半小时,以找到一种方法来检测Google Chrome的内置Web开发人员控制台是否已打开,但找不到任何提示。
这个:
if (window.console && window.console.chrome) {
//is open
};
不起作用。
编辑:
因此,似乎无法检测到Chrome控制台是否处于打开状态。但是有一个“hack”有效,但有一些缺点:
因此,我现在选择Unsigned的答案,但是如果some1提出了一个绝妙的主意,欢迎他继续回答,我将更改选择的答案!谢谢!
这些先前的答案留在这里作为历史背景。目前,穆罕默德·乌默(Muhammad
Umer)的方法
可在Chrome
78上运行,并具有检测关闭事件和打开事件的附加优势。
var devtools = function(){};
devtools.toString = function() {
this.opened = true;
}
console.log('%c', devtools);
// devtools.opened will become true if/when the console is opened
由于原始的问号者似乎不再存在,并且仍然是公认的答案,因此添加了此解决方案以提高可见性。该解决方案利用了以下事实:toString()
除非打开控制台,否则不会在已记录的对象上调用该事实。
var devtools = /./;
devtools.toString = function() {
this.opened = true;
}
console.log('%c', devtools);
// devtools.opened will become true if/when the console is opened
更新: console.profiles
已从Chrome中删除。该解决方案不再起作用。
使用探查器从DiscoverDevTools指出了该解决方案:
function isInspectOpen()
{
console.profile();
console.profileEnd();
if (console.clear) console.clear();
return console.profiles.length > 0;
}
此其他选项可以在页面加载后检测到停靠的检查器,但无法检测到未停靠的检查器,或者无法在页面加载时检查器已经打开。误报也有可能。
window.onresize = function()
{
if ((window.outerHeight - window.innerHeight) > 100)
alert('Docked inspector was opened');
}
今天我看到这个帖子,看看Chrome控制台是否打开了。 我可以绕过它,它可以被分配给另一个函数。我尝试了,然后检测函数就消失了(我知道写一个模拟函数更好,这里只是一个示例) 使用() 不会破坏检测,怎么走? 最后,我不得不说,我不喜欢被人监督。希望有一个合适的方式四处走动。
我想通过在selenium webdriver中按键盘键Ctrl打开chrome浏览器控制台。我可以使用Robot类来做这个动作,但我希望没有Robot类。我使用了Actions类和Keys类,使用的是sendKeys。但我无法打开浏览器控制台。 是chrome浏览器版本问题还是操作系统问题?为什么浏览器控制台没有使用Action类和Keys类打开?
当然,对于GUI,除非运行我上面提到的命令,否则不会加载控制台,所以如果您有很多打印语句,它是否仍然影响程序的速度,它们是否仍然打印?(即使认为没有显示终端/控制台)
问题语句:我有一个在Xcode中运行的程序,它有一堆print()语句,可以很好地将输出打印到调试控制台。然而,我希望也能够将这些输出重定向到一个文件,这样我就可以让用户将它们发送给我,作为调试的一种方式。 SO上找到的解决方案使我可以将输出重定向到文件,但调试控制台输出将丢失。 问:我想要我的蛋糕和吃它。我希望能够将print()语句重定向到调试控制台和文件。 所以我有引用:https://st
在chrome/Firefox控制台中找到xpath,但在selenium中找不到?有什么建议吗? Java代码双向: 以下是硒的作用: 线程“main”组织中出现异常。openqa。硒。TimeoutException:预期条件失败:等待元素可单击:按。xpath:/html1/body1/div2/div1/div1/div2/div2/div1/div3/div1/div[4]/div2/t
问题内容: 我想建立一个自动化测试,所以我必须知道chrome控制台中出现的错误。 是否有一个选项来获取出现在控制台中的错误行? 为了查看控制台:右键单击页面中的某处,单击“检查元素”,然后转到“控制台”。 问题答案: 我不知道C#,但这是可以完成此工作的Java代码,希望您可以将其转换为C# 注意上面代码中的setUp方法。我们使用LoggingPreferences对象来启用日志记录。日志有几