action.setTitle()

设置浏览器操作的标题。标题显示在鼠标悬停在浏览器操作图标上时的提示框中。你可以传入 tabIdwindowId 作为可选参数——如果这样做,则仅针对指定的标签页或窗口更改标题。没有特定标题的标签页或窗口会继承全局标题文本,其默认为清单中指定的 default_titlename

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

语法

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

参数

details

object,包含新的标题的对象,可选地包含要设置的标签页或窗口的 id。

title

stringnull,当鼠标移动到浏览器操作上时需要显示的字符串。

title 是空字符串,那么使用的标题将是扩展名,但是 action.getTitle 仍然会提供空字符串。

titlenull

  • 若指定了 tabId,并且标签页设置了特定的标题,那么标签页将继承其所属窗口的标题。
  • 若指定了 windowId,并且窗口设置了特定的标题,那么窗口将继承全局标题。
  • 否则,全局标题将重置为清单标题。
tabId 可选

integer,指定要设置标题的标签页。

windowId 可选

integer,指定要设置标题的窗口。

  • 若同时指定了 windowIdtabId,则函数出错且不会设置标题。
  • 若同时未指定 windowIdtabId,则将设置全局标题。

示例

这段代码在用户点击浏览器操作时在“this”和“that”之间切换标题:

js
function toggleTitle(title) {
  if (title === "this") {
    browser.action.setTitle({ title: "that" });
  } else {
    browser.action.setTitle({ title: "this" });
  }
}

browser.action.onClicked.addListener(() => {
  let gettingTitle = browser.action.getTitle({});
  gettingTitle.then(toggleTitle);
});

浏览器兼容性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Firefox for Android
Safari on iOS
setTitle
details.windowId parameter
The title property of the details parameter can be set to null.

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Partial support
Partial support
No support
No support

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