我可以使用 Firefox Add-on 在选项卡 header 上放置一个按钮吗?
Can I put a button on the tab header using Firefox Add-on?
在 Firefox 浏览器 window 中,我想在网页标题旁边的选项卡 header 上放置一个按钮。这在 Firefox add-on 上可行吗?到目前为止,我仍然不确定如何称呼标签的这一部分。抱歉重复!
编辑:我没有添加图像的声誉。 Here it is just for clarity (desired button in red)
对此的简短回答是:"Yes."
Firefox 附加组件几乎可以完全控制用户界面。在本例中,您想要查看的第一级 XUL 内容包含在 chrome://browser/content/browser.xul
中。此文件包含在 Firefox 发布目录的浏览器目录中的 omni.ja
存档中。所有 omni.ja
文件都是 zip 存档,您可以使用理解 .zip
存档的程序解压缩文件来查看这些文件。根据您的 OS,将扩展名更改为 omni.zip
可能更容易。在该存档中,此文件为 chrome\browser\content\browser\browser.xul
。
然而,您实际需要修改的内容位于 chrome://browser/content/tabbrowser.xml
文件中(在同一目录中)。该文件定义了选项卡堆栈的外观。如何更改此设置取决于您正在创建的附加组件的类型(例如覆盖、无重启、附加 SDK)以及您是否希望此更改应用于所有选项卡,或仅应用于部分选项卡。
您可能还想查看 browser.css
,它位于 skin
目录的子目录中。
此元素的 XUL 结构通常如下所示:
带 class="tab-content"
的 hbox
很可能是您要修改的内容。
在tabbrowser.xml
中,目前(Firefox 38.0.5)定义为:
<xul:hbox xbl:inherits="pinned,selected,titlechanged"
class="tab-content" align="center">
<xul:image xbl:inherits="fadein,pinned,busy,progress,selected"
class="tab-throbber"
role="presentation"
layer="true" />
<xul:image xbl:inherits="src=image,fadein,pinned,selected,busy,crashed"
anonid="tab-icon-image"
class="tab-icon-image"
validate="never"
role="presentation"/>
<xul:image xbl:inherits="crashed,busy"
class="tab-icon-overlay"
role="presentation"/>
<xul:label flex="1"
anonid="tab-label"
xbl:inherits="value=visibleLabel,crop,accesskey,fadein,pinned,selected"
class="tab-text tab-label"
role="presentation"/>
<xul:toolbarbutton anonid="close-button"
xbl:inherits="fadein,pinned,selected"
class="tab-close-button close-icon"/>
</xul:hbox>
在 Firefox 浏览器 window 中,我想在网页标题旁边的选项卡 header 上放置一个按钮。这在 Firefox add-on 上可行吗?到目前为止,我仍然不确定如何称呼标签的这一部分。抱歉重复!
编辑:我没有添加图像的声誉。 Here it is just for clarity (desired button in red)
对此的简短回答是:"Yes."
Firefox 附加组件几乎可以完全控制用户界面。在本例中,您想要查看的第一级 XUL 内容包含在 chrome://browser/content/browser.xul
中。此文件包含在 Firefox 发布目录的浏览器目录中的 omni.ja
存档中。所有 omni.ja
文件都是 zip 存档,您可以使用理解 .zip
存档的程序解压缩文件来查看这些文件。根据您的 OS,将扩展名更改为 omni.zip
可能更容易。在该存档中,此文件为 chrome\browser\content\browser\browser.xul
。
然而,您实际需要修改的内容位于 chrome://browser/content/tabbrowser.xml
文件中(在同一目录中)。该文件定义了选项卡堆栈的外观。如何更改此设置取决于您正在创建的附加组件的类型(例如覆盖、无重启、附加 SDK)以及您是否希望此更改应用于所有选项卡,或仅应用于部分选项卡。
您可能还想查看 browser.css
,它位于 skin
目录的子目录中。
此元素的 XUL 结构通常如下所示:
带 class="tab-content"
的 hbox
很可能是您要修改的内容。
在tabbrowser.xml
中,目前(Firefox 38.0.5)定义为:
<xul:hbox xbl:inherits="pinned,selected,titlechanged"
class="tab-content" align="center">
<xul:image xbl:inherits="fadein,pinned,busy,progress,selected"
class="tab-throbber"
role="presentation"
layer="true" />
<xul:image xbl:inherits="src=image,fadein,pinned,selected,busy,crashed"
anonid="tab-icon-image"
class="tab-icon-image"
validate="never"
role="presentation"/>
<xul:image xbl:inherits="crashed,busy"
class="tab-icon-overlay"
role="presentation"/>
<xul:label flex="1"
anonid="tab-label"
xbl:inherits="value=visibleLabel,crop,accesskey,fadein,pinned,selected"
class="tab-text tab-label"
role="presentation"/>
<xul:toolbarbutton anonid="close-button"
xbl:inherits="fadein,pinned,selected"
class="tab-close-button close-icon"/>
</xul:hbox>