【发布时间】:2013-05-15 15:34:25
【问题描述】:
我正在寻找一种从附加到网页的脚本中打开 WebKit“开发者工具”的方法。我需要 Google Chrome 和 Safari 的解决方案,如果它尚未打开,它将打开开发者工具窗格,并且(希望,如果你能弄清楚如何)在打开时也切换到所述窗格的特定选项卡/部分。
(用例,如果有人感兴趣:如果出现错误并且开发人员正在查看页面,我想打开console.log 输出窗口;这个特定页面将是一些 JavaScript 单元测试的输出.)
我在这个问题上设置了一个赏金,因为它显然是一个以前没有得到任何人满意的答案,而答案是一个毛茸茸的。请不要回答它,除非您有一个真正的答案:1) 在 两种浏览器 中都可以工作,并且 2) 不需要私有扩展 API,这些 API 不会从静态网页工作。
请参阅(相关但特定于 Chrome 和扩展程序):Can I programmatically open the devtools from a Google Chrome extension?
【问题讨论】:
-
如果可能的话,应该修复它。网页不得访问浏览器的界面。您应该考虑为此编写扩展程序或独立应用程序。
-
如果通过扩展这样做是可能的,那仍然是一个可以接受的答案;只要为所有常见浏览器提供方法,我就可以提供扩展垫片,在所有浏览器中公开单个接口。
-
在您的开发环境中,您是否想过简单地注入一个带有控制台日志输出的弹出窗口,而不是打开开发人员工具?对于 JS 错误和性能数据,这就是我们所做的。在开发环境中运行时,我们在页面底部注入一个小弹出窗口,开发人员可以单击它来展开它并查看日志以及每次调用到服务器的往返时间(常规回发和 AJAX )。
-
Riateche 是对的。您提出的问题可能会简化代码的调试,但它会给浏览器带来安全风险,即使使用插件或任何其他方法也是如此。浏览器不足以满足您所要求的开发需求。您应该为此使用 IDE。
-
你说你需要它,但我怀疑它。
标签: javascript google-chrome safari webkit developer-tools