MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-survey

这篇翻译不完整。请帮忙从英语翻译这篇文章

常说的 浏览器动作(browser action), 指通过在工具栏上上添加新按钮,提供用户互动选项,用户可点击按钮与你的扩展进行互动。

工具栏按钮(browser action)与地址栏按钮(page action)极为相似。区分其不同点及使用,请参看 Page actions and browser actions.

指定浏览器动作

通过manifest.json里的关键字browser_action 来定义浏览器动作的属性:

"browser_action": {
  "default_icon": {
    "19": "button/geo-19.png",
    "38": "button/geo-38.png"
  },
  "default_title": "Whereami?"
}

必须定义的键是 default_icon.

有两种方法来指定浏览器动作:带弹出框(popup)和不带弹出框(popup)。

如果不指定弹出框,当用户点击按钮时,点击事件将被发送至扩展,而扩展可用以下函数来捕获 browserAction.onClicked:

browser.browserAction.onClicked.addListener(handleClick);

如果指定了弹出框,当用户点击按钮时,点击事件将不会被发送,而是显示出弹出框。用户能够通过弹出框进行互动,并且点击框外区域时弹出框会自动关闭。请参看文章 Popup 来了解更多关于创建和管理弹出框的细节。

注意一个扩展只能指定一个浏览器动作。

可通过browserAction API在程序里更改你的浏览器动作的属性。

图标

想了解更多关于如何创建浏览器动作图标信息,请参看Photon Design System 文档里的 Iconography 部分.

范例

在Github上的扩展范例库 webextensions-examples 中有两个实现浏览器动作的例子:

  • bookmark-it uses a browser action without a popup.
  • beastify uses a browser action with a popup.

文档标签和贡献者

 此页面的贡献者: kyle2003
 最后编辑者: kyle2003,