我正在为Firefox开发一个新的标签页替换插件。安装后,当我单击新选项卡图标打开新选项卡时,新选项卡打开得很好,但地址栏显示了一个凌乱的网址: resource://firefox_p-at-getblog-dot-com/getblog_buttons_page/data/newtab.html
如何使地址栏为空?
发布于 2014-05-15 14:46:43
只有一个在URI栏中有“空白”URI的few pages。
现在,您有几个选项:
browser.xul中,或者将about模块和about模块组合在一起,就像@ gInitialPages建议的那样,使用gInitialPages模块。虽然这仍将显示URI,但它将是一个更好的URI。;)override about:newTab。这可以(will?)然而,有副作用,比如其他仍然覆盖about:newTab的附加组件,现在恰好是来自您的附加组件的新页面,它可能根本不起作用和/或破坏东西。发布于 2014-05-15 21:10:38
在webNavigation/docShell对象上有一个名为setCurrentURI的函数。这是一个时髦的,我从来没有发现它的真正用途。但它做的正是你所需要的。
gBrowser.webNavigation.setCurrentURI(Services.io.newURI('about:blank', null, null))将其设置为about:blank会将其清除,您可以将其设置为任何url,但它不会更改页面,只会更改url。
因此,请监听新选项卡页面DOMContentLoaded,并在加载后立即运行此代码。也许可以更快地改变它,比如检测输入框的值何时改变。
我想不出如何让它将url设置为实际读取about:newtab,也许其他人可以帮助我们,似乎如果您将其设置为about:ANYTHING,如果ANYTHING已经被一个关于url占用,那么它就会使url栏空白,所以就像about:newtab,about:about就会把它留空。奇怪的是,也许有人能帮我们弄清楚如何恶搞,我也很好奇。
发布于 2014-05-15 13:27:33
您可能希望将其替换为您自己的自定义about: protocol -以下是有关如何做到这一点的soem文档:
https://developer.mozilla.org/en-US/docs/Custom_about:_URLs
这是一个相当复杂的SDK-addon:https://github.com/mixedpuppy/about-awards/blob/master/lib/main.js#L171-L192的真实示例
https://stackoverflow.com/questions/23668805
复制相似问题