Spec-Zone.ru › Web Extensions

tabs.query()

Получает все вкладки с указанными свойствами или все вкладки, если свойства не указаны.

Это асинхронная функция, которая возвращает Promise.

Синтаксис

let querying = browser.tabs.query(queryObj)

Параметры

queryObj

object. Функция query() получит только те вкладки, свойства которых совпадают с указанными здесь.

См. документацию tabs.Tab, чтобы узнать больше об этих свойствах.

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

boolean. Являются ли вкладки активными в своих окнах.

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

boolean. Являются ли вкладки звуковыми.

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

boolean. Могут ли вкладки быть автоматически удалены браузером при низких ресурсах.

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

string или array из string. Используйте это для возвращения вкладок, чьи tab.cookieStoreId совпадают с любым из cookieStoreId строк. Этот параметр доступен только, если у дополнения есть разрешение "cookies" разрешение.

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

boolean. Являются ли вкладки в текущем окне.

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

boolean. Являются ли вкладки удаленными. Удаленная вкладка — это вкладка, содержимое которой было загружено из памяти, но она все еще отображается в строке вкладок. Ее содержимое перезагружается при следующем активации.

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

boolean. Являются ли вкладки скрытыми.

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

boolean. Являются ли вкладки выделенными.

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

integer. Положение вкладок в их окнах.

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

boolean. Являются ли вкладки выключенными.

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

boolean. Являются ли вкладки в последнем фокусированном окне.

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

boolean. Являются ли вкладки закрепленными.

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

tabs.TabStatus. Загрузились ли вкладки.

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

string. Сопоставление заголовков страниц с шаблоном. Требует разрешения "tabs" или разрешения на доступ к хосту для сопоставления вкладки.

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

string или array из string. Сопоставление вкладок с одним или несколькими шаблонами сопоставления. Обратите внимание, что идентификаторы фрагментов не сопоставляются. Требует разрешения "tabs" или разрешения на доступ к хосту для сопоставления вкладки.

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

integer. id родительского окна или windows.WINDOW_ID_CURRENT для текущего окна.

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

tabs.WindowType. Тип окна, в котором находятся вкладки.

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

A Promise, который будет выполнен с array из tabs.Tab объектов, содержащих информацию о каждой совпадающей вкладке.

Если произошла какая-либо ошибка, обещание будет отклонено с сообщением об ошибке.

Примеры

Получить все вкладки:

function logTabs(tabs) {
  for (const tab of tabs) {
    // tab.url requires the `tabs` permission or a matching host permission.
    console.log(tab.url);
  }
}

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

browser.tabs.query({}).then(logTabs, onError);

Получить все вкладки в текущем окне:

function logTabs(tabs) {
  for (const tab of tabs) {
    // tab.url requires the `tabs` permission or a matching host permission.
    console.log(tab.url);
  }
}

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

browser.tabs.query({ currentWindow: true }).then(logTabs, onError);

Получить активную вкладку в текущем окне:

function logTabs(tabs) {
  // tabs[0].url requires the `tabs` permission or a matching host permission.
  console.log(tabs[0].url);
}

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

browser.tabs
  .query({ currentWindow: true, active: true })
  .then(logTabs, onError);

Получить вкладки для всех URL-адресов HTTP и HTTPS по адресу "mozilla.org" или любого из его дочерних доменов:

function logTabs(tabs) {
  for (const tab of tabs) {
    // tab.url requires the `tabs` permission or a matching host permission.
    console.log(tab.url);
  }
}

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

browser.tabs.query({ url: "*://*.mozilla.org/*" }).then(logTabs, onError);

Примеры расширений

  • annotate-page
  • apply-css
  • beastify
  • bookmark-it
  • chill-out
  • contextual-identities
  • cookie-bg-picker
  • find-across-tabs
  • history-deleter
  • imagify
  • list-cookies
  • session-state
  • tabs-tabs-tabs

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari на IOS Samsung Internet
query Да
14Значения panel, app, devtools и popup для WindowType не поддерживаются.
45 ? Да
14Сопоставление по шаблонам поддерживает * и ?.
? ? 54 ?
15Сопоставление по шаблонам поддерживает * и ?.
?

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

Spec-Zone.ru

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