windows.getAll()

Ruft Informationen über alle geöffneten Fenster ab und übergibt sie an einen Callback.

Dies ist eine asynchrone Funktion, die ein Promise zurückgibt.

Syntax

js
let gettingAll = browser.windows.getAll(
  getInfo                // optional object
)

Parameter

getInfo Optional

object. Dies steuert, welche windows.Window Objekte abgerufen werden.

populate Optional

boolean. Standardmäßig false. Wenn auf true gesetzt, enthält jedes windows.Window Objekt eine tabs Eigenschaft, die eine Liste von tabs.Tab Objekten repräsentiert, die die Tabs in diesem Fenster darstellen. Die Tab Objekte enthalten die Eigenschaften url, title und favIconUrl nur, wenn die Manifestdatei der Erweiterung die Berechtigung "tabs" oder Host-Berechtigungen enthält, die mit der URL des Tabs übereinstimmen.

windowTypes Optional

Ein array von windows.WindowType Objekten. Wenn gesetzt, werden die zurückgegebenen windows.Window Objekte basierend auf ihrem Typ gefiltert. Wenn nicht gesetzt, ist der Standardfilter auf ['normal', 'panel', 'popup'] gesetzt, wobei 'panel' Fenstertypen auf die eigenen Fenster der Erweiterung beschränkt sind.

Rückgabewert

Ein Promise, das mit einem Array von windows.Window Objekten erfüllt wird, die alle Fenster repräsentieren, die den angegebenen Kriterien entsprechen. Wenn ein Fehler auftritt, wird das Promise mit einer Fehlermeldung abgelehnt.

Browser-Kompatibilität

BCD tables only load in the browser

Beispiele

Protokollieren Sie die URLs für die Tabs über alle "normalen" Browserfenster. Beachten Sie, dass Sie die "tabs" Berechtigung oder passende Host-Berechtigungen benötigen, um auf Tab-URLs zuzugreifen.

js
function logTabsForWindows(windowInfoArray) {
  for (const windowInfo of windowInfoArray) {
    console.log(`Window: ${windowInfo.id}`);
    console.log(windowInfo.tabs.map((tab) => tab.url));
  }
}

function onError(error) {
  console.error(`Error: ${error}`);
}

browser.browserAction.onClicked.addListener((tab) => {
  browser.windows
    .getAll({
      populate: true,
      windowTypes: ["normal"],
    })
    .then(logTabsForWindows, onError);
});

Beispielerweiterungen

Hinweis: Diese API basiert auf der chrome.windows API von Chromium. Diese Dokumentation ist von windows.json im Chromium-Code abgeleitet.