chrome.tabs

Описание

Используйте API chrome.tabs для взаимодействия с системой вкладок браузера. Вы можете использовать этот API для создания, изменения и перестановки вкладок в браузере.

API вкладок не только предлагает функции для манипулирования и управления вкладками, но также может определять язык вкладки, делать снимки экрана и взаимодействовать со сценариями содержимого вкладки.

Разрешения

Для использования большинства функций не требуются какие-либо разрешения. Например: создание новой вкладки, перезагрузка вкладки, переход на другой URL-адрес и т. д.

Существует три разрешения, о которых разработчики должны знать при работе с API вкладок.

Разрешение «вкладки»

Это разрешение не предоставляет доступ к пространству имен chrome.tabs . Вместо этого он предоставляет расширению возможность вызывать tabs.query() для четырех конфиденциальных свойств экземпляров tabs.Tab : url , pendingUrl , title и favIconUrl .

{
  "name": "My extension",
  ...
  "permissions": [
    "tabs"
  ],
  ...
}
Разрешения хоста

Разрешения хоста позволяют расширению читать и запрашивать четыре конфиденциальные tabs.Tab соответствующей вкладки. Свойства вкладки. Они также могут напрямую взаимодействовать с соответствующими вкладками, используя такие методы, как tabs.captureVisibleTab() , tabs.executeScript() , tabs.insertCSS() и tabs.removeCSS() .

{
  "name": "My extension",
  ...
  "host_permissions": [
    "http://*/*",
    "https://*/*"
  ],
  ...
}
Разрешение «activeTab»

activeTab предоставляет расширению временное разрешение хоста для текущей вкладки в ответ на вызов пользователя. В отличие от разрешений хоста, activeTab не выдает никаких предупреждений.

{
  "name": "My extension",
  ...
  "permissions": [
    "activeTab"
  ],
  ...
}

Варианты использования

В следующих разделах демонстрируются некоторые распространенные случаи использования.

Открыть страницу расширения в новой вкладке

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

фон.js:

chrome.runtime.onInstalled.addListener(({reason}) => {
  if (reason === 'install') {
    chrome.tabs.create({
      url: "onboarding.html"
    });
  }
});

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

В этом примере показано, как сервис-воркер расширения может получить активную вкладку из окна, находящегося в фокусе (или окна, находящегося в последнем фокусе, если ни одно окно Chrome не находится в фокусе). Обычно это можно рассматривать как текущую вкладку пользователя.

  async function getCurrentTab() {
    let queryOptions = { active: true, lastFocusedWindow: true };
    // `tab` will either be a `tabs.Tab` instance or `undefined`.
    let [tab] = await chrome.tabs.query(queryOptions);
    return tab;
  }

  function getCurrentTab(callback) {
    let queryOptions = { active: true, lastFocusedWindow: true };
    chrome.tabs.query(queryOptions, ([tab]) => {
      if (chrome.runtime.lastError)
      console.error(chrome.runtime.lastError);
      // `tab` will either be a `tabs.Tab` instance or `undefined`.
      callback(tab);
    });
  }

Отключить звук на указанной вкладке

В этом примере показано, как расширение может переключать состояние отключения звука для данной вкладки.

  async function toggleMuteState(tabId) {
    const tab = await chrome.tabs.get(tabId);
    const muted = !tab.mutedInfo.muted;
    await chrome.tabs.update(tabId, {muted});
    console.log(`Tab ${tab.id} is ${muted ? "muted" : "unmuted"}`);
  }

  function toggleMuteState(tabId) {
    chrome.tabs.get(tabId, async (tab) => {
      let muted = !tab.mutedInfo.muted;
      await chrome.tabs.update(tabId, { muted });
      console.log(`Tab ${tab.id} is ${ muted ? "muted" : "unmuted" }`);
    });
  }

Переместить текущую вкладку на первую позицию при нажатии

В этом примере показано, как переместить ��кладку во время перетаскивания, а может и нет. Хотя в этом примере используется chrome.tabs.move , вы можете использовать тот же шаблон ожидания для других вызовов, которые изменяют вкладки во время перетаскивания.

  chrome.tabs.onActivated.addListener(moveToFirstPosition);

  async function moveToFirstPosition(activeInfo) {
    try {
      await chrome.tabs.move(activeInfo.tabId, {index: 0});
      console.log("Success.");
    } catch (error) {
      if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
        setTimeout(() => moveToFirstPosition(activeInfo), 50);
      } else {
        console.error(error);
      }
    }
  }

  chrome.tabs.onActivated.addListener(moveToFirstPositionMV2);

  function moveToFirstPositionMV2(activeInfo) {
    chrome.tabs.move(activeInfo.tabId, { index: 0 }, () => {
      if (chrome.runtime.lastError) {
        const error = chrome.runtime.lastError;
        if (error == "Error: Tabs cannot be edited right now (user may be dragging a tab).") {
          setTimeout(() => moveToFirstPositionMV2(activeInfo), 50);
        } else {
          console.error(error);
        }
      } else {
        console.log("Success.");
      }
    });
  }

Передать сообщение в скрипт содержимого выбранной вкладки

В этом примере показано, как сервис-воркер расширения может взаимодействовать со сценариями содержимого на определенных вкладках браузера с помощью tabs.sendMessage() .

function sendMessageToActiveTab(message) {
  const [tab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true });
  const response = await chrome.tabs.sendMessage(tab.id, message);
  // TODO: Do something with the response.
}

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

Для получения дополнительных демонстраций расширений Tabs API изучите любое из следующего:

Типы

MutedInfo

Хром 46+

Состояние отключения звука вкладки и причина последнего изменения состояния.

Характеристики

  • идентификатор расширения

    строка необязательна

    Идентификатор расширения, которое изменило состояние отключения звука. Не устанавливается, если расширение не было причиной последнего изменения состояния отключения звука.

  • приглушенный

    логическое значение

    Отключен ли звук на вкладке (запрещено воспроизведение звука). Звук на вкладке может быть отключен, даже если на ней не воспроизводился или в данный момент не воспроизводится звук. Эквивалентно тому, отображается ли индикатор «отключенного звука».

  • причина

    MutedInfoReason необязательно

    Причина, по которой звук на вкладке был отключен или включен. Не устанавливается, если состояние отключения звука на вкладке никогда не менялось.

MutedInfoReason

Хром 46+

Событие, вызвавшее изменение состояния без звука.

Перечисление

"пользователь"
Действие пользовательского вв��да устанавливает отключенный звук.

"захватывать"
Захват вкладки был начат, что привело к изменению состояния без звука.

"расширение"
Расширение, идентифицируемое полем ExtensionId, установило состояние отключения звука.

Tab

Характеристики

  • активный

    логическое значение

    Активна ли вкладка в своем окне. Это не обязательно означает, что окно сфокусировано.

  • слышимый

    логическое значение необязательно

    Хром 45+

    Издавала ли вкладка звук в течение последних нескольких секунд (но его можно было бы не услышать, если бы он также был отключен). Эквивалентно тому, отображается ли индикатор «звук динамика».

  • автосбрасываемый

    логическое значение

    Хром 54+

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

  • выброшенный

    логическое значение

    Хром 54+

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

  • favIconUrl

    строка необязательна

    URL-адрес значка вкладки. Это свойство присутствует только в том случае, если манифест расширения включает разрешение "tabs" . Это также может быть пустая строка, если вкладка загружается.

  • идентификатор группы

    число

    Хром 88+

    Идентификатор группы, к которой принадлежит вкладка.

  • высота

    номер необязательно

    Высота вкладки в пикселях.

  • выделено

    логическое значение

    Подсвечивается ли вкладка.

  • идентификатор

    номер необязательно

    Идентификатор вкладки. Идентификаторы вкладок уникальны в рамках сеанса браузера. В некоторых случаях вкладке может не быть присвоен идентификатор; например, при запросе внешних вкладок с использованием API sessions , в этом случае может присутствовать идентификатор сеанса. Идентификатор вкладки также можно установить на chrome.tabs.TAB_ID_NONE для окон приложений и инструментов разработчика.

  • инкогнито

    логическое значение

    Находится ли вкладка в окне инкогнито.

  • индекс

    число

    Индекс вкладки, начинающийся с нуля, в ее окне.

  • последний доступ

    число

    Хром 121+

    Последний раз, когда к вкладке обращались, указывается количество миллисекунд с момента начала.

  • mutedInfo

    MutedInfo необязательно

    Хром 46+

    Состояние отключения звука вкладки и причина последнего изменения состояния.

  • openTabId

    номер необязательно

    Идентификатор вкладки, открывшей эту вкладку, если таковая имеется. Это свойство присутствует только в том случае, если вкладка открытия все еще существует.

  • ожидающий URL

    строка необязательна

    Хром 79+

    URL-адрес, по которому переходит вкладка, до фиксации. Это свойство присутствует только в том случае, если манифест расширения включает разрешение "tabs" и имеется ожидающая навигация.

  • закрепленный

    логическое значение

    Закреплена ли вкладка.

  • выбрано

    логическое значение

    Устарело

    Пожалуйста, используйте tabs.Tab.highlighted .

    Выбрана ли вкладка.

  • идентификатор сеанса

    строка необязательна

    Идентификатор сеанса, используемый для уникальной идентификации вкладки, полученный из API sessions .

  • статус

    TabStatus необязательно

    Статус загрузки вкладки.

  • заголовок

    строка необязательна

    Название вкладки. Это свойство присутствует только в том случае, если манифест расширения включает разрешение "tabs" .

  • URL

    строка необязательна

    Последний зафиксированный URL-адрес основного фрейма вкладки. Это свойство присутствует только в том случае, если манифест расширения включает разрешение "tabs" и может быть пустой строкой, если вкладка еще не зафиксирована. См. также Tab.pendingUrl .

  • ширина

    номер необязательно

    Ширина вкладки в пикселях.

  • идентификатор окна

    число

    Идентификатор окна, содержащего вкладку.

TabStatus

Хром 44+

Статус загрузки вкладки.

Перечисление

"разгружен"

"загрузка"

"полный"

WindowType

Хром 44+

Тип окна.

Перечисление

"нормальный"

"неожиданно возникнуть"

"панель"

"приложение"

"инструменты разработчика"

ZoomSettings

Определяет, как обрабатываются изменения масштаба на вкладке и в какой области.

Характеристики

  • по умолчаниюZoomFactor

    номер необязательно

    Хром 43+

    Используется для возврата уровня масштабирования по умолчанию для текущей вкладки при вызовах tabs.getZoomSettings.

  • режим

    Режим ZoomSettingsMode необязательно

    Определяет, как обрабатываются изменения масштаба, т. е. какой объект отвечает за фактическое масштабирование страницы; по умолчанию установлено automatic .

  • объем

    ZoomSettingsScope необязательно

    Определяет, сохраняются ли изменения масштаба для исходной страницы или вступают в силу только на этой вкладке; по умолчанию используется для per-origin в automatic режиме и per-tab в противном случае.

ZoomSettingsMode

Хром 44+

Определяет, как обрабатываются изменения масштаба, т. е. какой объект отвечает за фактическое масштабирование страницы; по умолчанию установлено automatic .

Перечисление

"автоматический"
Изменения масштаба обрабатываются браузером автоматически.

"руководство"
Переопределяет автоматическую обработку изменений масштаба. Событие onZoomChange по-прежнему будет отправлено, и расширение обязано прослушивать это событие и масштабировать страницу вручную. Этот режим не поддерживает масштабирование per-origin и, следовательно, игнорирует настройку масштабирования scope и предполагает индивидуальное per-tab .

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

ZoomSettingsScope

Хром 44+

Определяет, сохраняются ли изменения масштаба для исходной страницы или вступают в силу только на этой вкладке; по умолчанию используется для per-origin в automatic режиме и per-tab в противном случае.

Перечисление

"для каждого происхождения"
Изменения масштаба сохраняются в исходной точке увеличенной страницы, т. е. все остальные вкладки, перемещенные в ту же исходную точку, также масштабируются. Более того, изменения масштаба per-origin сохраняются вместе с источником, а это означает, что при переходе на другие страницы в том же ис��очнике все они масштабируются до одного и того же коэффициента масштабирования. Область per-origin доступна только в automatic режиме.

"для каждой вкладки"
Изменения масштаба вступают в силу только на этой вкладке, а изменения масштаба на других вкладках не влияют на масштабирование этой вкладки. Кроме того, изменения масштаба per-tab сбрасываются при навигации; при навигации по вкладке страницы всегда загружаются с коэффициентами масштабирования per-origin .

Характеристики

MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND

Хром 92+

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

Ценить

2

TAB_ID_NONE

Хром 46+

Идентификатор, обозначающий отсутствие вкладки браузера.

Ценить

-1

TAB_INDEX_NONE

Хром 123+

Индекс, обозначающий отсутствие индекса табуляции в tab_strip.

Ценить

-1

Методы

captureVisibleTab()

Обещать
chrome.tabs.captureVisibleTab(
  windowId?: number,
  options?: ImageDetails,
  callback?: function,
)

Захватывает видимую область активной в данный момент вкладки в указанном окне. Чтобы вызвать этот метод, расширение должно иметь либо разрешение <all_urls> , либо разрешение activeTab . Помимо сайтов, к которым расширения обычно имеют доступ, этот метод позволяет расширениям захватывать ко��фиденциальные сайты, доступ к которым в противном случае ограничен, включая страницы chrome:-scheme, ��т��ани��ы других расширений и URL-адреса data:. Эти конфиденциальные сайты можно захватить только с разрешением activeTab. URL-адреса файлов могут быть записаны только в том случае, если расширению предоставлен доступ к файлу.

Параметры

  • идентификатор окна

    номер необязательно

    Целевое окно. По умолчанию используется текущее окно .

  • параметры

    Детали изображения необязательно

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (dataUrl: string) => void

    • URL-адрес данных

      нить

      URL-адрес данных, который кодирует изображение видимой области захваченной вкладки. Может быть назначен свойству 'src' элемента HTML img для отображения.

Возврат

  • Обещание<строка>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

connect()

chrome.tabs.connect(
  tabId: number,
  connectInfo?: object,
)

Подключается к сценариям содержимого на указанной вкладке. Событие runtime.onConnect запускается в каждом сценарии содержимого, выполняющемся на указанной вкладке для текущего расширения. Дополнительные сведения см. в разделе «Обмен сообщениями сценариев содержимого» .

Параметры

  • идентификатор табуляции

    число

  • ConnectInfo

    объект необязательный

    • идентификатор документа

      строка необязательна

      Хром 106+

      Откройте порт для конкретного документа, идентифицируемого documentId , а не для всех кадров на вкладке.

    • идентификатор кадра

      номер необязательно

      Откройте порт для определенного кадра , определенного идентификатором frameId а не для всех кадров на вкладке.

    • имя

      строка необязательна

      Передается в onConnect для сценариев содержимого, которые прослушивают событие подключения.

Возврат

  • Порт, который можно использовать для связи со сценариями содержимого, работающими на указанной вкладке. Событие runtime.Port порта вызывается, если вкладка закрывается или не существует.

create()

Обещать
chrome.tabs.create(
  createProperties: object,
  callback?: function,
)

Создает новую вкладку.

Параметры

  • создать свойства

    объект

    • активный

      логическое значение необязательно

      Должна ли вкладка стать активной вкладкой в ​​окне. Не влияет на то, находится ли окно в фокусе (см. windows.update ). По умолчанию true .

    • индекс

      номер необязательно

      Положение, которое должна занимать вкладка в окне. Предоставленное значение ограничивается значением между нулем и количеством вкладок в окне.

    • openTabId

      номер необязательно

      Идентификатор вкладки, которая открыла эту вкладку. Если указано, вкладка открытия должна находиться в том же окне, что и вновь созданная вкладка.

    • закрепленный

      логическое значение необязательно

      Должна ли быть закреплена вкладка. По умолчанию false

    • выбрано

      логическое значение необязательно

      Устарело

      Пожалуйста, используйте активный .

      Должна ли вкладка стать выбранной вкладкой в ​​окне. По умолчанию true

    • URL

      строка необязательна

      URL-адрес для первоначального перехода на вкладку. Полные URL-адреса должны включать схему (т. е. «http://www.google.com», а не «www.google.com»). Относительные URL-адреса относятся к текущей странице расширения. По умолчанию используется страница новой вкладки.

    • идентификатор окна

      номер необязательно

      Окно, в котором создается новая вкладка. По умолчанию используется текущее окно .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tab: Tab) => void

Возврат

  • Обещание< Вкладка >

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

detectLanguage()

Обещать
chrome.tabs.detectLanguage(
  tabId?: number,
  callback?: function,
)

Определяет основной язык содержимого на вкладке.

Параметры

  • идентификатор табуляции

    номер необязательно

    По умолчанию активная вкладка текущего окна .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (language: string) => void

    • язык

      нить

      Код языка ISO, например en или fr . Полный список языков, поддерживаемых этим методом, см. в разделе kLanguageInfoTable . Проверяются столбцы со второго по четвертый, и возвращается первое значение, отличное от NULL, за исключением упрощенного китайского языка, для которого возвращается zh-CN . Для неизвестного/неопределенного языка возвращается und .

Возврат

  • Обещание<строка>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

discard()

Обещание Chrome 54+
chrome.tabs.discard(
  tabId?: number,
  callback?: function,
)

Удаляет вкладку из памяти. Удаленные вкладки по-прежнему видны на полосе вкладок и перезагружаются при активации.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки, которую нужно удалить. Если указано, вкладка удаляется, если только она не активна или уже удалена. Если этот параметр опущен, браузер отбрасывает на��менее важную вкладку. Это может привести к сбою, если не существует удаляемых вкладок.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tab?: Tab) => void

    • вкладка

      Вкладка необязательна

      Отброшенная вкладка, если она была успешно удалена; в противном случае не определено.

Возврат

  • Обещание< Вкладка | не определено>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

duplicate()

Обещать
chrome.tabs.duplicate(
  tabId: number,
  callback?: function,
)

Дублирует вкладку.

Параметры

  • идентификатор табуляции

    число

    Идентификатор вкладки, которую требуется дублировать.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tab?: Tab) => void

    • вкладка

      Вкладка необязательно

      Подробности о дублированной вкладке. Объект tabs.Tab не содержит url , pendingUrl , title и favIconUrl , если разрешение "tabs" не запрошено.

Возврат

  • Обещание< Вкладка | не определено>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

executeScript()

Promise ≤ MV2 устарел с Chrome 91
chrome.tabs.executeScript(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)

Заменен на scripting.executeScript в манифесте V3.

Внедряет код JavaScript на страницу. Подробности см. в разделе программного внедрения документа по сценариям контента.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки, в которой нужно запустить скрипт; по умолчанию — активная вкладка текущего окна.

  • подробности

    Подробности сценария для запуска. Должен быть установлен либо код, либо свойство файла, но оба параметра не могут быть установлены одновременно.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (result?: any[]) => void

    • результат

      любой[] необязательно

      Результат скрипта в каждом внедренном кадре.

Возврат

  • Обещание<любое[] | не определено>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

get()

Обещать
chrome.tabs.get(
  tabId: number,
  callback?: function,
)

Получает сведения об указанной вкладке.

Параметры

  • идентификатор табуляции

    число

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tab: Tab) => void

Возврат

  • Обещание< Вкладка >

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getAllInWindow()

Обещание ≤ MV2 устарело
chrome.tabs.getAllInWindow(
  windowId?: number,
  callback?: function,
)

Пожалуйста, используйте tabs.query {windowId: windowId} .

Получает сведения обо всех вкладках в указанном окне.

Параметры

  • идентификатор окна

    номер необязательно

    По умолчанию используется текущее окно .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tabs: Tab[]) => void

Возврат

  • Обещание< Tab []>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getCurrent()

Обещать
chrome.tabs.getCurrent(
  callback?: function,
)

Получает вкладку, из которой выполняется вызов этого сценария. Возвращает undefined , если вызывается из контекста, отличного от вкладок (например, фоновой страницы или всплывающего окна).

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tab?: Tab) => void

Возврат

  • Обещание< Вкладка | не определено>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getSelected()

Обещание ≤ MV2 устарело
chrome.tabs.getSelected(
  windowId?: number,
  callback?: function,
)

Пожалуйста, используйте tabs.query {active: true} .

Получает вкладку, выбранную в указанном окне.

Параметры

  • идентификатор окна

    номер необязательно

    По умолчанию используется текущее окно .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tab: Tab) => void

Возврат

  • Обещание< Вкладка >

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getZoom()

Обещать
chrome.tabs.getZoom(
  tabId?: number,
  callback?: function,
)

Получает текущий коэффициент масштабирования указанной вкладки.

Параметры

  • идентификатор табуляции

    номер необязательно

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

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (zoomFactor: number) => void

    • ZoomFactor

      число

      Текущий коэффициент масштабирования вкладки.

Возврат

  • Обещание<число>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getZoomSettings()

Обещать
chrome.tabs.getZoomSettings(
  tabId?: number,
  callback?: function,
)

Получает текущие настройки масштабирования указанной вкладки.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки, из которой нужно получить текущие настройки масштабирования; по умолчанию — активная вкладка текущего окна.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (zoomSettings: ZoomSettings) => void

Возврат

  • Обещание < ZoomSettings >

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

goBack()

Обещание Chrome 72+
chrome.tabs.goBack(
  tabId?: number,
  callback?: function,
)

Вернитесь на предыдущую страницу, если она доступна.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки для перехода назад; по умолчанию — выбранная вкладка текущего окна.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

goForward()

Обещание Chrome 72+
chrome.tabs.goForward(
  tabId?: number,
  callback?: function,
)

Перейдите на следующую страницу, если она доступна.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки для перехода вперед; по умолчанию — выбранная вкладка текущего окна.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

group()

Обещание Chrome 88+
chrome.tabs.group(
  options: object,
  callback?: function,
)

Добавляет одну или несколько вкладок в указанную группу или, если группа не указана, добавляет данные вкладки во вновь созданную группу.

Параметры

  • параметры

    объект

    • создать свойства

      объект необязательный

      Конфигурации для создания группы. Невозможно использовать, если groupId уже указан.

      • идентификатор окна

        номер необязательно

        Окно новой группы. ��о умолчанию используется т��кущ��е ��кно.

    • идентификатор группы

      номер необязательно

      Идентификатор группы, в которую нужно добавить вкладки. Если не указано, будет создана новая группа.

    • tabIds

      номер | [номер, ...номер[]]

      Идентификатор вкладки или список идентификаторов вкладок, которые нужно добавить в указанную группу.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (groupId: number) => void

    • идентификатор группы

      число

      Идентификатор группы, в которую были добавлены вкладки.

Возврат

  • Обещание<число>

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

highlight()

Обещать
chrome.tabs.highlight(
  highlightInfo: object,
  callback?: function,
)

Выделяет данные вкладки и фокусируется на первой из группы. Будет казаться, что ничего не происходит, если указанная вкладка в данный момент активна.

Параметры

  • ВыделитеИнформацию

    объект

    • вкладки

      номер | число[]

      Один или несколько индексов вкладок, которые нужно выделить.

    • идентификатор окна

      номер необязательно

      Окно, содержащее вкладки.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (window: Window) => void

    • окно

      Содержит сведения об окне, вкладки которого были выделены.

Возврат

  • Обещание< windows.Window >

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

insertCSS()

Promise ≤ MV2 устарел с Chrome 91
chrome.tabs.insertCSS(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)

Заменено scripting.insertCSS в манифесте V3.

Внедряет CSS на страницу. Стили, вставленные с помощью этого метода, можно удалить с помощью scripting.removeCSS . Подробности см. в разделе программного внедрения документа по сценариям контента.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки, в которую нужно вставить CSS; по умолчанию — активная вкладка текущего окна.

  • подробности

    Подробности текста CSS для вставки. Должен быть установлен либо код, либо свойство файла, но оба параметра не могут быть установлены одновременно.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

move()

Обещать
chrome.tabs.move(
  tabIds: number | number[],
  moveProperties: object,
  callback?: function,
)

Перемещает одну или несколько вкладок на новую позицию в пределах окна или в новое окно. Обратите внимание, что вкладки можно перемещать только в обычные (window.type === "normal") окна и обратно.

Параметры

  • tabIds

    номер | число[]

    Идентификатор вкладки или список идентификаторов вкладок, которые нужно переместить.

  • перемещениеСвойства

    объект

    • индекс

      число

      Позиция, в которую нужно переместить окно. Используйте -1 , чтобы разместить вкладку в конце окна.

    • идентификатор окна

      номер необязательно

      По умолчанию это окно, в котором в данный момент находится вкладка.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tabs: Tab | Tab[]) => void

Возврат

  • Обещание< Вкладка | Вкладка []>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

query()

Обещать
chrome.tabs.query(
  queryInfo: object,
  callback?: function,
)

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

Параметры

  • запросИнформация

    объект

    • активный

      логическое значение необязательно

      Активны ли вкладки в своих окнах.

    • слышимый

      логическое значение необязательно

      Хром 45+

      Слышны ли вкладки.

    • автосбрасываемый

      логическое значение необязательно

      Хром 54+

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

    • текущее окно

      логическое значение необязательно

      Находятся ли вкладки в текущем окне .

    • выброшенный

      логическое значение необязательно

      Хром 54+

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

    • идентификатор группы

      номер необязательно

      Хром 88+

      Идентификатор группы, в которой находятся вкладки, или tabGroups.TAB_GROUP_ID_NONE для несгруппированных вкладок.

    • выделено

      логическое значение необязательно

      Подсвечиваются ли вкладки.

    • индекс

      номер необязательно

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

    • последнееFocusedWindow

      логическое значение необязательно

      Находятся ли вкладки в последнем выделенном окне.

    • приглушенный

      логическое значение необязательно

      Хром 45+

      Отключены ли на вкладках звук.

    • закрепленный

      логическое значение необязательно

      Закреплены ли вкладки.

    • статус

      TabStatus необязательно

      Статус загрузки вкладки.

    • заголовок

      строка необязательна

      Сопоставьте заголовки страниц с шаблоном. Это свойство игнорируется, если у расширения нет разрешения "tabs" .

    • URL

      строка | строка[] необязательно

      Сопоставьте вкладки с одним или несколькими шаблонами URL-адрес��в . Идентификаторы фрагментов не совпадают. Это свойство игнорируется, если у расширения нет разрешения "tabs" .

    • идентификатор окна

      номер необязательно

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

    • тип окна

      Тип окна необязательно

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

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (result: Tab[]) => void

Возврат

  • Обещание< Tab []>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

reload()

Обещать
chrome.tabs.reload(
  tabId?: number,
  reloadProperties?: object,
  callback?: function,
)

Перезагрузите вкладку.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки для перезагрузки; по умолчанию — выбранная вкладка текущего окна.

  • перезагрузить свойства

    объект необязательный

    • обход кэша

      логическое значение необязательно

      Обходить ли локальное кэширование. По умолчанию установлено значение false .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

remove()

Обещать
chrome.tabs.remove(
  tabIds: number | number[],
  callback?: function,
)

Закрывает одну или несколько вкладок.

Параметры

  • tabIds

    номер | число[]

    Идентификатор вкладки или список идентификаторов вкладок, которые нужно закрыть.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

removeCSS()

Promise Chrome 87+ ≤ MV2 устарел с Chrome 91
chrome.tabs.removeCSS(
  tabId?: number,
  details: DeleteInjectionDetails,
  callback?: function,
)

Заменено на scripting.removeCSS в Manifest V3.

Удаляет со страницы CSS, который ранее был добавлен вызовом scripting.insertCSS .

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки, из которой нужно удалить CSS; по умолчанию — активная вкладка текущего окна.

  • Подробности текста CSS, который нужно удалить. Должен быть установлен либо код, либо свойство файла, но оба параметра не могут быть установлены одновременно.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

sendMessage()

Обещать
chrome.tabs.sendMessage(
  tabId: number,
  message: any,
  options?: object,
  callback?: function,
)

Отправляет одно сообщение в сценарии содержимого на указанной вкладке с дополнительным обратным вызовом, который будет запускаться при отправке ответа. Событие runtime.onMessage запускается в каждом сценарии содержимого, выполняющемся на указанной вкладке для текущего расширения.

Параметры

  • идентификатор табуляции

    число

  • сообщение

    любой

    Сообщение для отправки. Это сообщение должно быть объектом, поддерживающим формат JSON.

  • параметры

    объект необязательный

    • идентификатор документа

      строка необязательна

      Хром 106+

      Отправьте сообщение конкретному документу , определенному documentId , а не всем кадрам на вкладке.

    • идентификатор кадра

      номер необязательно

      Отправьте сообщение в конкретный кадр , определенный идентификатором frameId а не во все кадры на вкладке.

  • перезвонить

    функция необязательна

    Хром 99+

    Параметр callback выглядит так:

    (response: any) => void

    • ответ

      любой

      Объект ответа JSON, отправленный обработчиком сообщения. Есл�� при подключении к указанной вкладке возникает ошибка, обратный вызов вызывается без аргументов, а runtime.lastError устанавливается сообщение об ошибке.

Возврат

  • Обещание <любое>

    Хром 99+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

sendRequest()

Обещание ≤ MV2 устарело
chrome.tabs.sendRequest(
  tabId: number,
  request: any,
  callback?: function,
)

Пожалуйста, используйте runtime.sendMessage .

Отправляет один запрос к сценариям содержимого на указанной вкладке с дополнительным обратным вызовом, который выполняется при отправке ответа. Событие extension.onRequest запускается в каждом сценарии содержимого, выполняющемся на указанной вкладке для текущего расширения.

Параметры

  • идентификатор табуляции

    число

  • запрос

    любой

  • перезвонить

    функция необязательна

    Хром 99+

    Параметр callback выглядит так:

    (response: any) => void

    • ответ

      любой

      Объект ответа JSON, отправленный обработчиком запроса. Если при подключении к указанной вкладке возникает ошибка, обратный вызов вызывается без аргументов, а runtime.lastError устанавливается сообщение об ошибке.

Возврат

  • Обещание <любое>

    Хром 99+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

setZoom()

Обещать
chrome.tabs.setZoom(
  tabId?: number,
  zoomFactor: number,
  callback?: function,
)

Масштабирует указанную вкладку.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки для масштабирования; по умолчанию — активная вкладка текущего окна.

  • ZoomFactor

    число

    Новый коэффициент масштабирования. Значение 0 устанавливает для вкладки текущий коэффициент масштабирования по умолчанию. Значения больше 0 задают коэффициент масштабирования (возможно, не по умолчанию) для вкладки.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

setZoomSettings()

Обещать
chrome.tabs.setZoomSettings(
  tabId?: number,
  zoomSettings: ZoomSettings,
  callback?: function,
)

Устанавливает параметры масштабирования для указанной вкладки, которые определяют, как обрабатываются изменения масштаба. Эти настройки сбрасываются до значений по умолчанию при переходе по вкладке.

Параметры

  • идентификатор табуляции

    номер необязательно

    Идентификатор вкладки, для которой необходимо изменить параметры масштабирования; по умолчанию — активная вкладка текущего окна.

  • Определяет, как обрабатываются изменения масштаба и в какой области.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

ungroup()

Обещание Chrome 88+
chrome.tabs.ungroup(
  tabIds: number | [number, ...number[]],
  callback?: function,
)

Удаляет одну или несколько вкладок из соответствующих групп. Если какие-либо группы становятся пустыми, они удаляются.

Параметры

  • tabIds

    номер | [номер, ...номер[]]

    Идентификатор вкладки или список идентификаторов вкладок, которые необходимо удалить из соответствующих групп.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    () => void

Возврат

  • Обещание<void>

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

update()

Обещать
chrome.tabs.update(
  tabId?: number,
  updateProperties: object,
  callback?: function,
)

Изменяет свойства вкладки. Свойства, не указанные в updateProperties не изменяются.

Параметры

  • идентификатор табуляции

    номер необязательно

    По умолчанию выбрана вкладка текущего окна .

  • ОбновлениеСвойства

    объект

    • активный

      логическое значение необязательно

      Должна ли вкладка быть активной. Не влияет на то, находится ли окно в фокусе (см. windows.update ).

    • автосбрасываемый

      логическое значение необязательно

      Хром 54+

      Должна ли вкладка автоматически удаляться браузером при нехватке ресурсов.

    • выделено

      логическое значение необязательно

      Добавляет или удаляет вкладку из текущего выбора.

    • приглушенный

      логическое значение необязательно

      Хром 45+

      Должен ли звук на вкладке быть отключен.

    • openTabId

      номер необязательно

      Идентификатор вкладки, которая открыла эту вкладку. Если указано, вкладка открытия должна находиться в том же окне, что и эта вкладка.

    • закрепленный

      логическое значение необязательно

      Должна ли быть закреплена вкладка.

    • выбрано

      логическое значение необязательно

      Устарело

      Пожалуйста, используйте выделенный .

      Следует ли выбирать вкладку.

    • URL

      строка необязательна

      URL-адрес для перехода по вкладке. URL-адреса JavaScript не поддерживаются; вместо этого используйте scripting.executeScript .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (tab?: Tab) => void

    • вкладка

      Вкладка необязательна

      Подробности об обновленной вкладке. Объект tabs.Tab не содержит url , pendingUrl , title и favIconUrl , если разрешение "tabs" не запрошено.

Возврат

  • Обещание< Вкладка | не определено>

    Хром 88+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

События

onActivated

chrome.tabs.onActivated.addListener(
  callback: function,
)

Срабатывает при изменении активной вкладки в окне. Обратите внимание, что URL-адрес вкладки может не быть установлен во время запуска этого события, но вы можете прослушивать события onUpdated, чтобы получать уведомления, когда URL-адрес установлен.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (activeInfo: object) => void

    • активинфо

      объект

      • идентификатор табуляции

        число

        Идентификатор вкладки, которая стала активной.

      • идентификатор окна

        число

        Идентификатор окна, внутри которого изменилась активная вкладка.

onActiveChanged

≤ MV2 устарел
chrome.tabs.onActiveChanged.addListener(
  callback: function,
)

Пожалуйста, используйте tabs.onActivated .

Срабатывает при изменении выбранной вкладки в окне. Обратите внимание, что URL-адрес вкладки может не быть установлен во время запуска этого события, но вы можете прослушивать события tabs.onUpdated , чтобы получать уведомления, когда URL-адрес установлен.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (tabId: number, selectInfo: object) => void

    • идентификатор табуляции

      число

    • выберитеИнформа��ия

      объект

      • идентификатор окна

        число

        Идентификатор окна, внутри которого изменилась выбранная вкладка.

onAttached

chrome.tabs.onAttached.addListener(
  callback: function,
)

Вызывается, когда к окну прикреплена вкладка; например, потому что он был перемещен между окнами.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (tabId: number, attachInfo: object) => void

    • идентификатор табуляции

      число

    • AttachInfo

      объект

      • новая позиция

        число

      • новыйWindowId

        число

onCreated

chrome.tabs.onCreated.addListener(
  callback: function,
)

Вызывается при создании вкладки. Обратите внимание, что URL-адрес вкладки и членство в группе вкладок могут быть не установлены во время запуска этого события, но вы можете прослушивать события onUpdated, чтобы получать уведомления, когда URL-адрес установлен или вкладка добавляется в группу вкладок.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (tab: Tab) => void

onDetached

chrome.tabs.onDetached.addListener(
  callback: function,
)

Вызывается, когда вкладка отделена от окна; например, потому что он был перемещен между окнами.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (tabId: number, detachInfo: object) => void

    • идентификатор табуляции

      число

    • отсоединитьинформацию

      объект

      • старая позиция

        число

      • старыйWindowId

        число

onHighlightChanged

≤ MV2 устарел
chrome.tabs.onHighlightChanged.addListener(
  callback: function,
)

Пожалуйста, используйте tabs.onHighlighted .

Вызывается при изменении выделенных или выбранных вкладок в окне.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (selectInfo: object) => void

    • выберитеИнформация

      объект

      • tabIds

        число[]

        Все выделенные вкладки в окне.

      • идентификатор окна

        число

        Окно, вкладки которого менялись.

onHighlighted

chrome.tabs.onHighlighted.addListener(
  callback: function,
)

Вызывается при изменении выделенных или выбранных вкладок в окне.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (highlightInfo: object) => void

    • ВыделитеИнформацию

      объект

      • tabIds

        число[]

        Все выделенные вкладки в окне.

      • идентификатор окна

        число

        Окно, вкладки которого менялись.

onMoved

chrome.tabs.onMoved.addListener(
  callback: function,
)

Вызывается при перемещении вкладки внутри окна. Запускается только одно событие перемещения, представляющее вкладку, которую непосредственно переместил пользователь. События перемещения не запускаются для других вкладок, которые должны перемещаться в ответ на перемещение вкладки вручную. Это событие не вызывается при перемещении вкладки между окнами; подробности см. tabs.onDetached .

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (tabId: number, moveInfo: object) => void

    • идентификатор табуляции

      число

    • moveInfo

      объект

      • отиндекс

        число

      • toIndex

        число

      • идентификатор окна

        число

onRemoved

chrome.tabs.onRemoved.addListener(
  callback: function,
)

Вызывается при закрытии вкладки.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (tabId: number, removeInfo: object) => void

    • идентификатор табуляции

      число

    • удалитьинформацию

      объект

      • isWindowClosing

        логическое значение

        Истинно, когда вкладка была закрыта, поскольку ее родительское окно было закрыто.

      • идентификатор окна

        число

        Окно, вкладка которого закрыта.

onReplaced

chrome.tabs.onReplaced.addListener(
  callback: function,
)

Вызывается, когда вкладка заменяется другой вкладкой из-за предварительной отрисовки или мгновенного отображения.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (addedTabId: number, removedTabId: number) => void

    • добавленныйTabId

      число

    • удаленныйTabId

      число

onSelectionChanged

≤ MV2 устарел
chrome.tabs.onSelectionChanged.addListener(
  callback: function,
)

Пожалуйста, используйте tabs.onActivated .

Срабатывает при изменении выбранной вкладки в окне.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (tabId: number, selectInfo: object) => void

    • идентификатор табуляции

      число

    • выберитеИнформация

      объект

      • идентификатор окна

        число

        Идентификатор окна, внутри которого изменилась выбранная вкладка.

onUpdated

chrome.tabs.onUpdated.addListener(
  callback: function,
)

Вызывается при обновлении вкладки.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (tabId: number, changeInfo: object, tab: Tab) => void

    • идентификатор табуляции

      число

    • изменениеИнформация

      объект

      • слышимый

        логическое значение необязательно

        Хром 45+

        Новое звуковое состояние вкладки.

      • автосбрасываемый

        логическое значение необязательно

        Хром 54+

        Новое состояние автоматического удаления вкладки.

      • выброшенный

        логическое значение необязательно

        Хром 54+

        Новое отброшенное состояние вкладки.

      • favIconUrl

        строка необязательна

        Новый URL-адрес значка вкладки.

      • идентификатор группы

        номер необязательно

        Хром 88+

        Новая группа вкладки.

      • mutedInfo

        MutedInfo необязательно

        Хром 46+

        Новое отключенное состояние вкладки и причина изменения.

      • закрепленный

        логическое значение необязательно

        Новое закрепленное состояние вкладки.

      • статус

        TabStatus необязательно

        Статус загрузки вкладки.

      • заголовок

        строка необязательна

        Хром 48+

        Новое название вкладки.

      • URL

        строка необязательна

        URL-адрес вкладки, если он изменился.

    • вкладка

onZoomChange

chrome.tabs.onZoomChange.addListener(
  callback: function,
)

Вызывается при масштабировании вкладки.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (ZoomChangeInfo: object) => void