tabGroups.onMoved
Wird ausgelöst, wenn eine Tab-Gruppe innerhalb eines Fensters oder in ein anderes Fenster verschoben wird. tabs.onMoved wird auch für die Tabs innerhalb der Gruppe ausgelöst.
Dem Ereignis wird ein tabGroups.TabGroup-Objekt übergeben. Dieses enthält die windowId, aber nicht die Position der Tab-Gruppe. Um die Position der Tab-Gruppe zu ermitteln, verwenden Sie tabs.query() mit der groupId und lesen Sie die index-Eigenschaft des zurückgegebenen Tabs aus.
In Chrome wird dieses Ereignis nicht ausgelöst, wenn eine Tab-Gruppe zwischen Fenstern verschoben wird. Stattdessen wird die Gruppe aus einem Fenster entfernt und in einem anderen erstellt (wodurch tabGroups.onRemoved und tabGroups.onCreated ausgelöst werden).
Syntax
browser.tabGroups.onMoved.addListener(listener)
browser.tabGroups.onMoved.removeListener(listener)
browser.tabGroups.onMoved.hasListener(listener)
Ereignisse haben drei Funktionen:
addListener(listener)-
Fügt diesem Ereignis einen Listener hinzu.
removeListener(listener)-
Beendet das Lauschen auf dieses Ereignis. Das Argument
listenerbezeichnet den zu entfernenden Listener. hasListener(listener)-
Prüft, ob
listenerfür dieses Ereignis registriert ist. Gibttruezurück, wenn dies der Fall ist, andernfallsfalse.
Syntax von addListener
>Parameter
listener-
Die Funktion, die beim Auftreten dieses Ereignisses aufgerufen wird. Ihr wird folgendes Argument übergeben:
group-
tabGroups.TabGroup. Details zum Zustand der verschobenen Tab-Gruppe.
Beispiele
Verschiebungen von Tab-Gruppen erfassen und protokollieren:
function tabGroupMoved(group) {
console.log(
`Tab group with ID ${group.id} was moved to window ${group.windowId}.`,
);
}
browser.tabGroups.onMoved.addListener(tabGroupMoved);
Eine Tab-Gruppe finden, die in ein anderes Fenster verschoben wurde:
browser.tabGroups.onMoved.addListener(async (group) => {
let tabs = await browser.tabs.query({
groupId: group.id,
});
console.log(
`Moved tab group to ${tabs[0].index} in window ${group.windowId}`,
);
});