action
读取和修改属性,以及监听使用 action
清单键定义的浏览器工具栏按钮的点击事件。
注意: 此 API 在清单 V3 或更高版本中可用。它替换了清单 V2 API browserAction
以及在 Chrome 和 Safari 中的 pageAction
.
浏览器操作 是浏览器工具栏中的一个按钮。
您可以将弹出窗口与按钮关联。与网页类似,弹出窗口使用 HTML、CSS 和 JavaScript 指定。在弹出窗口中运行的 JavaScript 可以访问与后台脚本相同的 WebExtension API,但其全局上下文是弹出窗口,而不是浏览器中显示的当前页面。要影响网页,您需要通过 消息 与它们进行通信。
如果您指定了弹出窗口,则在用户点击图标时,弹出窗口将显示,并加载其内容。如果您没有指定弹出窗口,则在用户点击图标时,将向您的扩展分派一个事件。
该按钮还有一个上下文菜单,您可以使用 menus
API,使用 action
menus.ContextType
在此菜单中添加项目。
使用 action
API,您可以
- 使用
action.onClicked
监听图标上的点击事件。 - 获取和设置图标的属性 - 图标、标题、弹出窗口等。您可以全局获取和设置这些属性,跨所有选项卡,也可以通过传递选项卡 ID 作为附加参数来获取和设置特定选项卡的属性。
类型
action.ColorArray
-
一个包含四个范围为 0-255 的整数的数组,用于定义 RGBA 颜色。
action.ImageDataType
函数
action.setTitle()
-
设置浏览器操作的标题。这将在工具提示中显示。
action.getTitle()
-
获取浏览器操作的标题。
action.setIcon()
-
设置浏览器操作的图标。
action.setPopup()
-
设置用户点击浏览器操作图标时打开的 HTML 文档作为弹出窗口。
action.getPopup()
-
获取设置为浏览器操作弹出窗口的 HTML 文档。
action.openPopup()
-
打开浏览器操作的弹出窗口。
action.setBadgeText()
-
设置浏览器操作的徽章文本。徽章显示在图标顶部。
action.getBadgeText()
-
获取浏览器操作的徽章文本。
action.setBadgeBackgroundColor()
-
设置徽章的背景颜色。
action.getBadgeBackgroundColor()
-
获取徽章的背景颜色。
action.setBadgeTextColor()
-
设置徽章的文本颜色。
action.getBadgeTextColor()
-
获取徽章的文本颜色。
action.getUserSettings()
-
获取浏览器操作的用户指定设置。
action.enable()
-
为选项卡启用浏览器操作。默认情况下,浏览器操作对所有选项卡都启用。
action.disable()
-
为选项卡禁用浏览器操作,这意味着当该选项卡处于活动状态时,无法点击该操作。
action.isEnabled()
-
检查浏览器操作是否启用。
事件
action.onClicked
-
当点击浏览器操作图标时触发。如果浏览器操作有弹出窗口,则不会触发此事件。
浏览器兼容性
BCD 表格仅在浏览器中加载
注意: 此 API 基于 Chromium 的 chrome.action
API。本文档源自 Chromium 代码中的 action.json
。