windows.get()
Holt Details über ein Fenster, das durch seine ID angegeben wird. Die Details werden in einen Rückruf übergeben.
Dies ist eine asynchrone Funktion, die ein Promise
zurückgibt.
Syntax
let getting = browser.windows.get(
windowId, // integer
getInfo // optional object
)
Parameter
windowId
-
integer
. Die ID des Fensterobjekts, das Sie zurückgegeben haben möchten. getInfo
Optional-
object
. Enthält Optionen zum Filtern des Fenstertyps.populate
Optional-
boolean
. Wenntrue
, wird daswindows.Window
-Objekt einetabs
-Eigenschaft haben, die eine Liste vontabs.Tab
-Objekten enthält, die die im Fenster geöffneten Tabs repräsentieren. DieTab
-Objekte enthalten nur die Eigenschaftenurl
,title
undfavIconUrl
, wenn die Manifestdatei der Erweiterung die"tabs"
-Berechtigung oder eine passende Host-Berechtigung enthält. windowTypes
Optional-
array
vonwindows.WindowType
-Objekten. Wenn gesetzt, wird das zurückgegebenewindows.Window
basierend auf seinem Typ gefiltert. Wenn nicht gesetzt, wird der Standardfilter auf['normal', 'panel', 'popup']
gesetzt, wobei'panel'
-Fenstertypen auf die eigenen Fenster der Erweiterung beschränkt sind.
Hinweis:
Falls angegeben, wird die windowTypes
-Komponente von getInfo
ignoriert. Die Verwendung von windowTypes
wurde ab Firefox 62 als veraltet erklärt.
Rückgabewert
Ein Promise
, das mit einem windows.Window
-Objekt erfüllt wird, das die Details des Fensters enthält. Wenn ein Fehler auftritt, wird das Promise mit einer Fehlermeldung abgelehnt.
Beispiele
Dieses Beispiel holt das aktuelle Fenster und protokolliert die URLs der darin enthaltenen Tabs. Beachten Sie, dass Sie die "tabs"-Berechtigung oder passende Host-Berechtigungen benötigen, um auf Tab-URLs zuzugreifen.
Hinweis:
Dieses Beispiel ist etwas unrealistisch: In dieser Situation würden Sie wahrscheinlich eher windows.getCurrent()
verwenden.
function logTabs(windowInfo) {
for (const tabInfo of windowInfo.tabs) {
console.log(tabInfo.url);
}
}
function onError(error) {
console.error(`Error: ${error}`);
}
browser.browserAction.onClicked.addListener((tab) => {
browser.windows.get(tab.windowId, { populate: true }).then(logTabs, onError);
});
Browser-Kompatibilität
Hinweis:
Diese API basiert auf der chrome.windows
-API von Chromium. Diese Dokumentation leitet sich von windows.json
im Chromium-Code ab.