我目前正在开发一个简单的Firefox扩展程序。现在我希望能够在扩展上下文中的控制台中发出一些命令。
我已按照说明安装了Javascript Debugger插件(venkman):
从不设置上下文,我总是在venkman.xul上下文中结束(或者更确切地说)。
我会切换到另一个调试器,但到目前为止还没有运行chromebug:
然后chromebug在它自己的窗口上不允许我选择一个上下文,实际上它甚至没有显示任何上下文,所有面板都被停用。
我真的不知道在哪里再看,并希望有一个解决方案。 现在我甚至不需要设置断点的所有“花哨”调试器,只需要在chrome级别发出命令。
答案 0 :(得分:12)
Firefox现在有一个内置的调试器,很容易与竞争对手竞争,可能超过了firebug,chromebug或venkman。
about:config
中的{p> You need to enable (or create) 2 particular options用于扩展调试:
devtools.chrome.enabled: true
devtools.debugger.remote-enabled: true
然后单击Web Developer菜单中的新“Browser Debugger”条目。 “浏览器控制台”也非常有用。
official documentation提到这可以在Firefox 19中使用,但实际上它将only work well on all extension code from Firefox 23 onwards。 (如果您在Firefox 22发布之前尝试此操作,只需安装the latest nightly build。)
另请注意,如果您是editing extension code directly,则需要让Firefox进行刷新,例如在调试器列出更新的代码之前,使用the tips mentioned in this answer重新加载所有chrome扩展名。
更新:Firefox v32及更高版本具有对 restartless和SDK-based附加组件的内置调试支持。作为stated in Mozilla's documentation,上面提到的“远程调试”现在在Web Developer窗格的设置中有一个复选框:
然后您可以转到加载项 - >扩展选项卡,然后单击“调试”以及扩展名。