action.setBadgeText()

设置浏览器操作的徽章文本(徽章将显示在图标上方)。

备注:该 API 在 Manifest V3 或更高版本中可用。

未指定特定徽章文本的标签页将继承全局徽章文本(默认为 "")。

语法

js
browser.action.setBadgeText(
  details // 对象
)

该 API 同样以 chrome.action.setBadgeText() 的形式可用。

参数

details

一个含有下列属性的对象:

text

stringnull,可以传入任意长度的字符串,但空间只能容纳大约四个字符。

若你不希望显示徽章,可以使用空字符串 ""

若指定了 tabIdnull 将移除指定标签页的徽章文本使之继承全局徽章文本;否则,会将全局徽标文本撤销为 ""

若指定了 windowIdnull 将移除指定窗口的徽章文本使之继承全局徽章文本;否则,会将全局徽章文本撤销为 ""

tabId 可选

integer,为给定标签页设置徽章文本。当用户将标签页导航到新页面的时候,文本将被重置。

windowId 可选

integer,为给定窗口设置徽章文本。

  • 若同时指定了 windowIdtabId,则函数出错。
  • 若同时未指定 windowIdtabId,则将设置全局徽章文本。

示例

添加一个显示用户点击按钮次数的徽标:

js
let clicks = 0;

function increment() {
  browser.action.setBadgeText({ text: (++clicks).toString() });
}

browser.action.onClicked.addListener(increment);

浏览器兼容性

BCD tables only load in the browser

备注:该 API 基于 Chromium 的 chrome.action API。本文衍生自 Chromium 代码中的 browser_action.json