Spec-Zone.ru › Web Extensions

extension.getViews()

Возвращает массив объектов Window для каждой страницы, выполняющейся внутри текущего расширения. Это включает, например:

  • задний фоновый процесс, если он определен
  • любые всплывающие страницы, если они определены и загружены
  • любые страницы настроек, если они определены и загружены
  • любые вкладки браузера, содержащие содержимое, упакованное с расширением

В Firefox, если этот метод вызывается со страницы, которая является частью окна приватного просмотра, например, боковой панели в приватном окне или всплывающего окна, открытого из приватного окна, то возвращаемое значение не будет включать фоновый процесс расширения.

Синтаксис

let windows = browser.extension.getViews(
  fetchProperties // optional object
)

Параметры

fetchProperties Необязательно

Объект со следующими свойствами:

type Необязательно

string. extension.ViewType указывающий тип представления для получения. Если опущено, эта функция возвращает все представления.

windowId Необязательно

integer. Окно, к которому ограничить поиск. Если опущено, эта функция возвращает все представления. В версиях Firefox 92 и ниже представления боковых панелей не подходят и, следовательно, не возвращаются.

Возвращаемое значение

array object. Массив объектов Window.

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet
getViews Да 14
45Если этот метод вызывается со страницы, являющейся частью окна приватного просмотра, например, боковой панели в приватном окне или всплывающего окна, открытого из приватного окна, то возвращаемое значение не будет включать фоновый процесс расширения.
? Да 14 ? ?
48Если этот метод вызывается со страницы, являющейся частью окна приватного просмотра, например, боковой панели в приватном окне или всплывающего окна, открытого из приватного окна, то возвращаемое значение не будет включать фоновый процесс расширения.
? 15 ?
windowId Да 14
45С Firefox 93 представления боковых панелей теперь подходят.
? Да
14Фильтрация по windowId не будет работать, когда вкладка перемещается из одного окна в другое.
? ?
48Свойство распознаётся, но фильтр не оказывает никакого влияния.
?
15Фильтрация по windowId не будет работать, когда вкладка перемещается из одного окна в другое.
?

Примеры

Получить все окна, принадлежащие этому расширению, и вывести их URL:

const windows = browser.extension.getViews();

for (const extensionWindow of windows) {
  console.log(extensionWindow.location.href);
}

Получить только окна во вкладках браузера, содержащие содержимое, упакованное с расширением:

const windows = browser.extension.getViews({ type: "tab" });

Получить только окна во всплывающих окнах:

const windows = browser.extension.getViews({ type: "popup" });

Примечание: Этот API основан на API chrome.extension Chromium. Данная документация взята из extension.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/extension/getViews

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API