1

我正在开发一些 chrome/firefox 扩展,我想要完成的是这两者之间尽可能相似的用户体验。我已经明白,虽然在 chrome 中您可以(通过 manifest.json)注册以覆盖 chrome://newtab,但在 Firefox 中这并不是一件容易的事。我想在 Firefox 中完成的是,一旦用户单击浏览器操作按钮 - 它会打开带有我本地 HTML 页面的新选项卡。这段代码就是这样做的:

var buttons = require('sdk/ui/button/action');
var tabs = require('sdk/tabs');
var wuntils = require('sdk/window/utils');

var handleClick = function (state) {
    tabs.open({
        "url": "./pages/index.html",
        "isPinned": false
    });
};

var button = buttons.ActionButton({
    id: "mozilla-link",
    label: "Visit Mozilla",
    icon: {
        "16": "./assets/logo.png",
        "32": "./assets/logo.png",
        "64": "./assets/logo.png"
    },
    onClick: handleClick
});

这种方法的问题在于,一旦打开新选项卡,地址栏中就会出现 resource://.... URL。我注意到其他一些扩展设法将其删除并保持地址栏为空,但如果我尝试更改tab.url属性,它会启动重定向循环......

任何想法如何使它看起来像一个新标签但保持地址栏为空?

谢谢!

4

0 回答 0