browserAction.setBadgeTextColor()

设置浏览器操作徽章上的文本颜色。没有特定徽章文本颜色的标签页将继承全局徽章文本颜色。

语法

js
browser.browserAction.setBadgeTextColor(
  details // object
)

参数

details

具有以下属性的对象:

color

颜色,指定为以下之一:

  • 一个字符串:任何 CSS <color> 值,例如 "red""#FF0000""rgb(255 0 0)"。如果字符串不是有效的颜色,返回的 Promise 将被拒绝,文本颜色也不会被更改。
  • 一个 browserAction.ColorArray 对象。
  • null。如果指定了 tabId,则会移除标签页特定的徽章文本颜色,以便该标签页继承全局徽章文本颜色。否则,它会将全局徽章文本颜色恢复到默认值。
tabId 可选

integer。仅为指定的标签页设置徽章文本颜色。当用户将此标签页导航到新页面时,颜色将被重置。

windowId 可选

integer。仅为指定的窗口设置徽章文本颜色。

  • 如果同时提供了 windowIdtabId,则函数将失败,颜色不会被设置。
  • 如果同时省略了 windowIdtabId,则会设置全局徽章文本颜色。

示例

一个徽章文本颜色,最初为红色,在浏览器操作被点击时变为绿色

js
browser.browserAction.setBadgeText({ text: "1234" });
browser.browserAction.setBadgeTextColor({ color: "red" });

browser.browserAction.onClicked.addListener(() => {
  browser.browserAction.setBadgeTextColor({ color: "green" });
});

仅为活动标签页设置徽章文本颜色

js
browser.browserAction.setBadgeText({ text: "1234" });
browser.browserAction.setBadgeTextColor({ color: "red" });

browser.browserAction.onClicked.addListener((tab) => {
  browser.browserAction.setBadgeTextColor({
    color: "green",
    tabId: tab.id,
  });
});

浏览器兼容性

注意:此 API 基于 Chromium 的 chrome.browserAction API。本文档源自 Chromium 代码中的 browser_action.json