tabGroups.onMoved
當標籤頁組在一個視窗內移動或移動到另一個視窗時觸發。屬於該組內的標籤頁也會觸發 tabs.onMoved 事件。
該事件會傳遞一個 tabGroups.TabGroup 物件。該物件包含 windowId,但不包含標籤頁組的位置。要確定標籤頁組的位置,請使用帶有 groupId 的 tabs.query(),並讀取返回標籤頁的 index 屬性。
在 Chrome 中,當標籤頁組在視窗之間移動時,此事件不會觸發;取而代之的是,該組會從一個視窗中移除,然後在另一個視窗中建立(觸發 tabGroups.onRemoved 和 tabGroups.onCreated)。
語法
js
browser.tabGroups.onMoved.addListener(listener)
browser.tabGroups.onMoved.removeListener(listener)
browser.tabGroups.onMoved.hasListener(listener)
事件有三個函式
addListener(listener)-
向此事件新增監聽器。
removeListener(listener)-
停止監聽此事件。
listener引數是要移除的偵聽器。 hasListener(listener)-
檢查
listener是否已為此事件註冊。如果正在監聽,則返回true,否則返回false。
addListener 語法
引數
監聽器-
當此事件發生時呼叫的函式。該函式將傳遞此引數
group-
tabGroups.TabGroup。被移動的標籤頁組狀態的詳細資訊。
示例
監聽並記錄標籤頁組的移動
js
function tabGroupMoved(group) {
console.log(
`Tab group with ID ${group.id} was moved to window ${group.windowId}.`,
);
}
browser.tabGroups.onMoved.addListener(tabGroupMoved);
定位一個被移動到另一個視窗的標籤頁組。
js
browser.tabGroups.onMoved.addListener(group => {
let tabs = await browser.tabs.query({
groupId: group.id,
});
console.log(`Moved tab group to ${tabs[0].index} in window ${group.windowId}`);
});
瀏覽器相容性
載入中…