首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用新标签页替换附加组件打开新标签页时,如何保持地址栏清晰?

使用新标签页替换附加组件打开新标签页时,如何保持地址栏清晰?
EN

Stack Overflow用户
提问于 2014-05-15 11:34:17
回答 3查看 821关注 0票数 4

我正在为Firefox开发一个新的标签页替换插件。安装后,当我单击新选项卡图标打开新选项卡时,新选项卡打开得很好,但地址栏显示了一个凌乱的网址: resource://firefox_p-at-getblog-dot-com/getblog_buttons_page/data/newtab.html

如何使地址栏为空?

EN

回答 3

Stack Overflow用户

发布于 2014-05-15 14:46:43

只有一个在URI栏中有“空白”URI的few pages

现在,您有几个选项:

  • Overlay/inject进入stuff.
  • Implement,只需将你的附加组件URI添加到browser.xul中,或者将about模块和about模块组合在一起,就像@ gInitialPages建议的那样,使用gInitialPages模块。虽然这仍将显示URI,但它将是一个更好的URI。;)
  • 或,作为最后的手段,override about:newTab。这可以(will?)然而,有副作用,比如其他仍然覆盖about:newTab的附加组件,现在恰好是来自您的附加组件的新页面,它可能根本不起作用和/或破坏东西。
票数 2
EN

Stack Overflow用户

发布于 2014-05-15 21:10:38

webNavigation/docShell对象上有一个名为setCurrentURI的函数。这是一个时髦的,我从来没有发现它的真正用途。但它做的正是你所需要的。

代码语言:javascript
复制
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就会把它留空。奇怪的是,也许有人能帮我们弄清楚如何恶搞,我也很好奇。

票数 1
EN

Stack Overflow用户

发布于 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的真实示例

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23668805

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档