0

我有一些与 Firefox 扩展中的上下文相关的查询。

  1. 当我们从覆盖 xul 加载脚本时,我们可以访问窗口/文档吗?如果是,我如何从这里访问网页内容?
  2. @mozilla.org/moz/jssubscript-loader;1从 xul、popup 和使用scriptloader加载的脚本加载的脚本的生命周期是多少?
  3. 从非阻塞弹出窗口访问网页内容的最佳方式是什么?
4

1 回答 1

1

当我们从覆盖 xul 加载脚本时,我们可以访问窗口/文档吗?如果是,我如何从这里访问网页内容?

覆盖通常适用于browser.xul- 主浏览器窗口。它们加载的任何脚本都会在浏览器窗口的上下文中加载,这就是全局windowdocument变量所指的内容。gBrowser.contentWindow您可以通过和gBrowser.contentDocument(gBrowser是对<tabbrowser>元素的引用 )访问当前选择的浏览器选项卡。

@mozilla.org/moz/jssubscript-loader;1 从 xul、popup 和使用scriptloader加载的脚本加载的脚本的生命周期是多少?

脚本加载器将脚本加载到由第二个参数给定的上下文中loadSubScript()。如果省略该参数,则它将脚本加载到调用者的上下文中。只要上下文仍然存在,脚本将至少存在 - 如果有任何外部引用,脚本将持续存在(这通常不是一个好主意)。

从非阻塞弹出窗口访问网页内容的最佳方式是什么?

这在很大程度上取决于您认为“弹出窗口”的内容。XUL 对话框?一个 XUL <panel>?在新浏览器窗口中打开的网页?

于 2012-11-21T12:54:08.513 回答