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