2012-04-07 61 views
0

萤火虫是一个很好的插件,我很喜欢在开发Firefox扩展时使用它,不幸的是它需要一点杂技 - 看起来它主要是用网页,而不是头脑中的铬脚本。Firefox插件全局对象与萤火虫控制台全局对象

我想使用Firebug控制台来检查和操纵由我的扩展创建的对象。不幸的是,打字的时候“这个”到控制台我得到的是,当前的全球目标是

Window <url here> 

,同时倾销“这一”从我的插件范围,我得到

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) 
+0

我不认为你可以在没有构建Firebug mod的情况下做到 – user123444555621 2012-04-07 22:10:42

+0

Firebug不适用于扩展,你可能会在Chromebug(这是一个Firebug扩展)中运行得更多。 – 2012-04-07 22:34:01

回答

0

您可以尝试Chromebug。

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