windows.onFocusChanged

当当前焦点窗口发生变化时触发。如果所有浏览器窗口都失去了焦点,将为 windows.WINDOW_ID_NONE

注意:在 Windows 和某些 Linux 窗口管理器中,WINDOW_ID_NONE 将始终在从一个浏览器窗口切换到另一个浏览器窗口之前立即发送。

语法

js
browser.windows.onFocusChanged.addListener(listener)
browser.windows.onFocusChanged.removeListener(listener)
browser.windows.onFocusChanged.hasListener(listener)

事件具有三个函数

addListener(listener)

向此事件添加一个监听器。

removeListener(listener)

停止监听此事件。listener 参数是要删除的监听器。

hasListener(listener)

检查是否为该事件注册了 listener。如果正在监听,则返回 true,否则返回 false

addListener 语法

参数

listener

发生此事件时调用的函数。该函数将传递此参数

windowId

integer。新焦点窗口的 ID。

浏览器兼容性

BCD 表格仅在浏览器中加载

示例

记录焦点更改

js
browser.windows.onFocusChanged.addListener((windowId) => {
  console.log(`Newly focused window: ${windowId}`);
});

示例扩展

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