0

Firebug 是一个很棒的插件,我很想在开发 Firefox 扩展时使用它,不幸的是它需要一点杂技——看起来它主要是用网页制作的,而不是考虑到 chrome 脚本。

我想使用 Firebug 控制台来检查和操作由我的扩展创建的对象。不幸的是,当在控制台中输入“this”时,我发现当前的全局对象是

Window <url here>

从我的插件范围中转储“this”时,我得到了

Window browser.xul

这就是我的插件及其所有对象所在的位置。如何从 Firebug 控制台访问此对象(或以其他方式 - 从我的插件访问所谓的“this”到控制台)?

有一种方法可以执行 MDN 上描述的类似操作:

https://developer.mozilla.org/en/Working_with_windows_in_chrome_code#Accessing_the_elements_of_the_top-level_document_from_a_child_window

但它要求调用脚本是一个特权窗口,而控制台显然不是。在控制台中运行此代码段会导致:

Error: Permission denied for <http://siteurl> to create wrapper for object of     class UnnamedClass
[Break On This Error]   

.getInterface(Components.interfaces.nsIWebNavigation)
4

1 回答 1

0

你可以试试 Chromebug。

另一种方法是打开 chrome://browser/content/browser.xul,然后你会在选项卡中看到一个 Firefox 浏览器窗口,打开父窗口 Firebug,window对象就是你想要的。

于 2013-04-18T02:25:38.157 回答