windows.getAll()
Получает информацию обо всех открытых окнах, передавая её в обратный вызов.
Это асинхронная функция, которая возвращает Promise.
Синтаксис
let gettingAll = browser.windows.getAll( getInfo // optional object )
Параметры
-
getInfoНеобязательно -
object. Это управляет тем, какие объектыwindows.Windowизвлекаются.-
populateНеобязательно -
boolean. По умолчаниюfalse. Если установленоtrue, каждый объектwindows.Windowбудет иметь свойствоtabs, содержащее список объектовtabs.Tab, представляющих вкладки в этом окне. ОбъектыTabбудут содержать свойстваurl,titleиfavIconUrlтолько в том случае, если файл манифеста расширения включает разрешение"tabs"или разрешения разрешений на доступ к хосту, соответствующие URL вкладки. -
windowTypesНеобязательно -
Массив объектов
windows.WindowType. Если он задан, объектыwindows.Window, возвращаемые функцией, будут отфильтрованы по их типу. Если не задан, используется фильтр по умолчанию['normal', 'panel', 'popup'], при этом типы окон'panel'ограничены собственными окнами расширения.
-
Возвращаемое значение
A Promise, который будет выполнен с массивом объектов windows.Window, представляющих все окна, соответствующие заданным критериям. При возникновении любой ошибки промис будет отклонен с сообщением об ошибке.
Совместимость с браузерами
| Рабочий стол | Мобильный | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
getAll |
Да | 14 | 45 | ? | Да | 14 | ? | ? | Нет | ? | 15 | ? |
populate |
Да | 79 | 45 | ? | Да | 14 | ? | ? | Нет | ? | 15 | ? |
windowTypes |
46 | 14 | 58 | ? | 33 | 14 | ? | ? | Нет | ? | Нет | ? |
Примеры
Выведите URL вкладок во всех обычных окнах браузера. Обратите внимание, что для доступа к URL вкладок необходимо разрешение «вкладки» permission или соответствующие разрешения на доступ к хосту.
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); });
Примеры расширений
Примечание: Этот API основан на API chrome.windows Chromium. Данная документация взята из windows.json кода Chromium.
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/windows/getAll