Firefox附加组件SDK:相当于Chrome“chrome_url_overrides”

时间:2015-07-07 09:03:16

标签: javascript firefox-addon firefox-addon-sdk

我正在为多种浏览器制作附加模块,包括Chrome和Firefox。

我刚刚使用Chrome完成了我想要的操作:覆盖新的标签网址以加载包含manifest.json 的HTML文件。很简单。 (现在我可以再次复制粘贴:)):

  ...

  "chrome_url_overrides" : {
    "newtab": "override.html"
  },

  ...

当用户创建一个新的空白选项卡时,它会覆盖默认页面并加载我想要的文件:override.html,具有相同的行为(地址栏中没有URL)。

但是现在,我希望使用附加SDK对Firefox 做同样的事情。我尝试使用browser.newtab.url

var { get, set } = require("sdk/preferences/service");
var { when: unload } = require("sdk/system/unload");

var oldValue = get("browser.newtab.url");

set("browser.newtab.url", 'http://www.example.com');

// Restore old setting when unload
unload(function() {
  set("browser.urlbar.autoFill", oldValue);
});

它有效,但是我真的能够加载一个HTML文件,而不是给它一个新的URL(代码更易于维护)并保持一个干净的地址栏

有什么想法吗?

0 个答案:

没有答案