tabs.onDetached

当一个标签页从窗口中分离时触发,例如因为它正在被移动到另一个窗口。

语法

js
browser.tabs.onDetached.addListener(listener)
browser.tabs.onDetached.removeListener(listener)
browser.tabs.onDetached.hasListener(listener)

事件具有三个函数:

addListener(listener)

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

removeListener(listener)

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

hasListener(listener)

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

addListener 语法

参数

listener

此事件发生时调用的函数。该函数接收以下参数:

tabId

integer。分离的标签页的 ID。

detachInfo

object。前一个窗口的 ID 以及标签页在其中的位置。详见 detachInfo 部分。

附加对象

detachInfo

oldWindowId

integer。前一个窗口的 ID。

oldPosition

integer。标签页在旧窗口中的索引位置。

示例

监听分离事件并记录信息:

js
function handleDetached(tabId, detachInfo) {
  console.log(`标签页:${tabId} 已移动`);
  console.log(`旧窗口:${detachInfo.oldWindowId}`);
  console.log(`旧索引:${detachInfo.oldPosition}`);
}

browser.tabs.onDetached.addListener(handleDetached);

浏览器兼容性

BCD tables only load in the browser

备注: 该 API 基于 Chromium 的 chrome.tabs API。此文档来自 Chromium 代码中的 tabs.json