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 语法

参数

监听器

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

windowId

integer。新获得焦点的窗口的 ID。

示例

记录焦点变化

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

扩展程序示例

浏览器兼容性

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