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

js
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. Wenn true, wird das windows.Window-Objekt eine tabs-Eigenschaft haben, die eine Liste von tabs.Tab-Objekten enthält, die die im Fenster geöffneten Tabs repräsentieren. Die Tab-Objekte enthalten nur die Eigenschaften url, title und favIconUrl, wenn die Manifestdatei der Erweiterung die "tabs"-Berechtigung oder eine passende Host-Berechtigung enthält.

windowTypes Optional

array von windows.WindowType-Objekten. Wenn gesetzt, wird das zurückgegebene windows.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.

js
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.