action.isEnabled()

如果浏览器操作已启用,则返回 true

注意:此 API 在 Manifest V3 或更高版本中可用。

这是一个异步函数,返回一个 Promise

语法

js
let gettingIsEnabled = browser.action.isEnabled(
  details // object
)

参数

details

object。一个可选对象,包含要检查的 tabIdwindowId

tabId 可选

integer。要检查的标签页的 ID。

windowId 可选

integer。窗口的 ID。

  • 如果同时提供了 windowId 和 tabId,则函数会失败。
  • 如果同时省略了 windowId 和 tabId,则返回全局启用/禁用状态。

返回值

一个 Promise,如果扩展的浏览器操作已启用,则会以 true fulfilled,否则以 false fulfilled。

示例

检查全局状态

js
browser.action.isEnabled({}).then((result) => {
  console.log(result);
});

检查当前活动标签页的状态

js
async function enabledInActiveTab() {
  let tabs = await browser.tabs.query({
    currentWindow: true,
    active: true,
  });
  let enabled = await browser.action.isEnabled({
    tabId: tabs[0].id,
  });
  console.log(enabled);
}

浏览器兼容性