0

我正在开发覆盖新标签页的 Firefox 扩展,我需要从地址栏中隐藏我的页面 URL。我使用这段代码:

if (gInitialPages.indexOf(NEW_TAB_URL)===-1)  gInitialPages.push(NEW_TAB_URL);

它在 XUL Overlay 代码中正常工作,但是当我尝试使我的应用程序无重启并将此代码移动到 bootstrap.js 时出现错误:

gInitialPages 未定义

那么,我如何gInitialPages在引导扩展中使用(或类似的东西)?

4

1 回答 1

1

Bootstrapped/restartless 扩展不会在(a)窗口的上下文中自动运行。 bootstrap.js在自己的上下文中运行,每个应用程序实例只运行一次,而不是在浏览器窗口中。

您需要:

  • 手动枚举所有现有的浏览器窗口。
  • 在打开新的浏览器窗口时监听它们。

然后在这些窗口中操作变量。

请参阅Mardak 的示例,了解如何做到这一点,尤其watchWindowsunload.

于 2015-02-22T17:31:47.480 回答