windows.getCurrent()
Получает текущее окно браузера, передавая его данные в обратный вызов.
«Текущее» окно необязательно совпадает с текущим фокусированным окном. Если эта функция вызывается из скрипта фонового процесса, то возвращается текущее фокусированное окно. Но если она вызывается из скрипта, документ которого связан с определённым окном браузера, то возвращается это окно браузера. Например, если браузер отображает боковую панель, то каждое окно браузера имеет свою копию документа боковой панели. Если скрипт, выполняющийся в документе боковой панели, вызывает getCurrent(), то он вернёт окно этого документа боковой панели.
Это асинхронная функция, которая возвращает Promise.
Синтаксис
let gettingCurrent = browser.windows.getCurrent( getInfo // optional object )
Параметры
-
getInfoНеобязательно -
object.-
populateНеобязательно -
boolean. Если true, объектwindows.Windowбудет иметь свойствоtabs, содержащее список объектовtabs.Tab, представляющих вкладки в окне. ОбъектыTabсодержат свойстваurl,titleиfavIconUrlтолько в том случае, если в манифесте расширения включено разрешение"tabs"или разрешения host permissions, которые соответствуют URL вкладки. -
windowTypesУстаревшее Необязательно -
Массив объектов
. Если задано, возвращённое значениеwindows.WindowTypewindows.Windowбудет отфильтровано по типу. Если не задано, используется фильтр по умолчанию['normal', 'panel', 'popup'], с'panel'типами окон, ограниченными собственными окнами расширения.
-
Примечание: Если задано, компонент windowTypes объекта getInfo игнорируется. Использование windowTypes устарело начиная с Firefox 62.
Значение возврата
Объект Promise, который будет выполнен с объектом windows.Window, содержащим данные окна. Если произошла какая-либо ошибка, обещание будет отклонено с сообщением об ошибке.
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | |
getCurrent |
Да | 14 | 45 | ? | Да | 14 | ? | ? | Нет | ? | 15 | ? |
getInfo |
18 | 14 | 45 | ? | 15 | 14 | ? | ? | Нет | ? | 15 | ? |
Примеры
Когда пользователь нажимает на значок действия браузера, этот пример получает текущее окно и регистрирует URL вкладок, которые оно содержит. Обратите внимание, что вам потребуется разрешение "tabs" permission или соответствующие host permissions, чтобы получить доступ к URL вкладок.
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.getCurrent({ populate: true }).then(logTabs, 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/getCurrent