chrome.tabs

Opis

Użyj interfejsu API chrome.tabs, aby wchodzić w interakcje z systemem kart przeglądarki. Za pomocą tego interfejsu API możesz tworzyć, modyfikować i przestawiać karty w przeglądarce.

Omówienie

Interfejs Tabs API udostępnia nie tylko funkcje manipulowania kartami i zarządzania nimi, ale też umożliwia wykrywanie języka karty, robienie zrzutów ekranu oraz komunikowanie się ze skryptami treści karty.

Uprawnienia

Większość funkcji nie wymaga żadnych uprawnień. Na przykład: tworzenie nowej karty, przeładowywanie karty, przechodzenie do innego adresu URL itp.

Podczas pracy z interfejsem Tabs API programiści powinni zwracać uwagę na 3 rodzaje uprawnień.

Uprawnienie „karty”
To uprawnienie nie zapewnia dostępu do przestrzeni nazw chrome.tabs. Zamiast tego rozszerzeniu przyznaje możliwość wywoływania funkcji tabs.query() w przypadku 4 wrażliwych właściwości w przypadku tabs.Tab: url, pendingUrl, titlefavIconUrl.
Uprawnienia hosta
Uprawnienia hosta umożliwiają rozszerzeniu odczytywanie i wysyłanie zapytań dotyczących 4 wrażliwych właściwości tabs.Tab na pasku dopasowania. Mogą też bezpośrednio wchodzić w interakcje z odpowiednimi kartami za pomocą takich metod jak tabs.captureVisibleTab(), tabs.executeScript(), tabs.insertCSS()tabs.removeCSS().
Uprawnienie „activeTab”
activeTab przyznaje rozszerzeniu tymczasowe uprawnienia hosta dla bieżącej karty w odpowiedzi na wywołanie przez użytkownika. W przeciwieństwie do uprawnień hosta activeTab nie powoduje żadnych ostrzeżeń.

Plik manifestu

Oto przykłady deklarowania poszczególnych uprawnień w pliku manifestu:

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

  {
    "name": "My extension",
    ...
    "host_permissions": [
      "http://*/*",
      "https://*/*"
    ],
    ...
  }

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

Przypadki użycia

W następnych sekcjach przedstawiamy kilka typowych zastosowań.

Otwieranie strony rozszerzenia w nowej karcie

Rozszerzenia często otwierają stronę wprowadzającą w nowej karcie po zainstalowaniu rozszerzenia. Poniżej znajdziesz przykład, jak to zrobić.

background.js:

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

Pobieranie bieżącej karty

Ten przykład pokazuje, jak usługa workera rozszerzenia może pobrać aktywną kartę z okna, które jest obecnie aktywne (lub ostatnio aktywnego, jeśli żadne okno Chrome nie jest aktywne). Zazwyczaj można to traktować jako bieżącą kartę użytkownika.

  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);
    });
  }

Wycisz określoną kartę

Ten przykład pokazuje, jak rozszerzenie może włączać i wyłączać wyciszenie danej karty.

  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" }`);
    });
  }

Przenoszenie bieżącej karty na pierwszą pozycję po kliknięciu

Ten przykład pokazuje, jak przenosić kartę, gdy przeciąganie może być w toku lub nie. W tym przykładzie użyto funkcji chrome.tabs.move, ale możesz użyć tego samego wzorca oczekiwania w przypadku innych wywołań, które modyfikują karty podczas przeciągania.

  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.");
      }
    });
  }

Przekazywanie wiadomości do skryptu treści wybranej karty

Ten przykład pokazuje, jak serwis worker rozszerzenia może komunikować się z skryptami treści na określonych kartach przeglądarki za pomocą 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.
}

Przykłady rozszerzeń

Aby zobaczyć więcej demonstracji rozszerzeń interfejsu Tabs API, zapoznaj się z tymi materiałami:

Typy

MutedInfo

Chrome 46 lub nowszy

Stan wyciszenia karty i przyczyna ostatniej zmiany stanu.

Właściwości

  • extensionId

    string opcjonalny

    Identyfikator rozszerzenia, które zmieniło stan wyciszenia. Nie ustawione, jeśli rozszerzenie nie było przyczyną ostatniej zmiany stanu wyciszenia.

  • Wyciszono

    wartość logiczna

    Czy karta jest wyciszona (czy nie odtwarza dźwięku). Karta może być wyciszona, nawet jeśli nie została jeszcze odtworzona lub nie jest obecnie odtwarzana. To samo, co wyświetlanie wskaźnika wyciszenia dźwięku.

  • reason

    MutedInfoReason opcjonalnie

    powód wyciszenia lub odwrócenia wyciszenia karty. Nie ustawione, jeśli stan wyciszenia karty nigdy nie został zmieniony.

MutedInfoReason

Chrome 46 lub nowszy

Zdarzenie, które spowodowało zmianę stanu wyciszenia.

Typ wyliczeniowy

"user"
Działanie użytkownika, które ustawia stan wyciszenia.

„capture”
Rozpoczęto przechwytywanie karty, co powoduje wymuszenie zmiany stanu wyciszenia.

"extension"
Rozszerzenie z identyfikatorem extensionId, które jest wyciszone.

Tab

Właściwości

  • aktywna

    wartość logiczna

    Określa, czy karta jest aktywna w oknie. Nie oznacza to, że okno jest aktywne.

  • audible

    wartość logiczna opcjonalna

    Chrome 45 lub nowszy

    czy karta emitowała dźwięk w ciągu ostatnich kilku sekund (ale może być niesłyszalny, jeśli jest wyciszony). To samo, co wyświetlanie wskaźnika „Dźwięk głośnika”.

  • autoDiscardable

    wartość logiczna

    Chrome 54 lub nowszy

    Określa, czy karta może być automatycznie odrzucona przez przeglądarkę, gdy zasoby są niskie.

  • odrzucono

    wartość logiczna

    Chrome 54 lub nowszy

    Określa, czy karta została odrzucona. Odrzucona karta to karta, której zawartość została wczytana z pamięci, ale nadal jest widoczna na pasku kart. Treści są ponownie wczytywane przy następnym uruchomieniu.

  • favIconUrl

    string opcjonalny

    Adres URL favikony karty. Ta właściwość jest obecna tylko wtedy, gdy plik manifestu rozszerzenia zawiera uprawnienia "tabs". Może to być też pusty ciąg znaków, jeśli karta jest wczytywana.

  • zamrożony

    wartość logiczna

    Oczekuje

    Czy karta jest zablokowana. Zablokowana karta nie może wykonywać zadań, w tym modułów obsługi zdarzeń ani zegarów. Jest widoczna na pasku kart, a jej zawartość jest wczytana do pamięci. Po aktywacji jest odblokowany.

  • groupId

    liczba

    Chrome 88 lub nowszy

    Identyfikator grupy, do której należy karta.

  • wysokość

    number opcjonalny

    Wysokość karty w pikselach.

  • wyróżniona

    wartość logiczna

    Czy karta jest wyróżniona.

  • id

    number opcjonalny

    Identyfikator karty. Identyfikatory kart są unikalne w ramach sesji przeglądarki. W niektórych okolicznościach karta może nie mieć przypisanego identyfikatora. Może się tak zdarzyć na przykład podczas wysyłania zapytań do obcych kart za pomocą interfejsu API sessions. W takim przypadku może być obecny identyfikator sesji. Identyfikator karty może też mieć wartość chrome.tabs.TAB_ID_NONE w przypadku okien aplikacji i narzędzi deweloperskich.

  • incognito

    wartość logiczna

    Określa, czy karta jest w oknie incognito.

  • indeks

    liczba

    Indeks karty w oknie, liczony od zera.

  • lastAccessed

    liczba

    Chrome 121 lub nowszy

    Ostatni czas uzyskania dostępu do karty podany jako liczba milisekund od początku epoki.

  • mutedInfo

    MutedInfo opcjonalnie

    Chrome 46 lub nowszy

    Stan wyciszenia karty i przyczyna ostatniej zmiany stanu.

  • openerTabId

    number opcjonalny

    Identyfikator karty, która otworzyła tę kartę (jeśli istnieje). Ta właściwość jest obecna tylko wtedy, gdy karta otwierająca nadal istnieje.

  • pendingUrl

    string opcjonalny

    Chrome 79 lub nowszy

    Adres URL, do którego przekierowuje karta, zanim nastąpi zmiana. Ta właściwość jest obecna tylko wtedy, gdy plik manifestu rozszerzenia zawiera uprawnienie "tabs" i wystąpiła oczekująca nawigacja.

  • przypięty

    wartość logiczna

    Czy karta jest przypięta.

  • wybrano

    wartość logiczna

    Wycofany

    Użyj tabs.Tab.highlighted.

    Informacja o tym, czy karta jest wybrana.

  • sessionId

    string opcjonalny

    Identyfikator sesji służący do jednoznacznej identyfikacji karty uzyskanej z interfejsu API sessions.

  • status

    TabStatus opcjonalnie

    Stan wczytywania karty.

  • tytuł

    string opcjonalny

    Tytuł karty. Ta właściwość jest obecna tylko wtedy, gdy plik manifestu rozszerzenia zawiera uprawnienia "tabs".

  • URL

    string opcjonalny

    Ostatni zaakceptowany adres URL głównej ramki karty. Ta właściwość jest obecna tylko wtedy, gdy plik manifestu rozszerzenia zawiera uprawnienia "tabs". Może być pustym ciągiem znaków, jeśli karta nie została jeszcze zaakceptowana. Zobacz też Tab.pendingUrl.

  • szerokość

    number opcjonalny

    Szerokość karty w pikselach.

  • windowId

    liczba

    Identyfikator okna zawierającego kartę.

TabStatus

Chrome 44 lub nowszy

Stan wczytywania karty.

Typ wyliczeniowy

„unloaded”

„loading”

„complete”

WindowType

Chrome 44 lub nowszy

Typ okna.

Typ wyliczeniowy

„normal”

„popup”

„panel”

"app"

„devtools”

ZoomSettings

Określa, jak i w jakim zakresie są obsługiwane zmiany powiększenia na karcie.

Właściwości

  • defaultZoomFactor

    number opcjonalny

    Chrome 43 lub nowszy

    Służy do zwracania domyślnego poziomu powiększenia bieżącej karty w wywołaniach funkcji tabs.getZoomSettings.

  • tryb

    ZoomSettingsMode opcjonalnie

    Określa sposób obsługi zmian powiększenia, czyli określa, która strona jest odpowiedzialna za rzeczywiste skalowanie strony. Wartość domyślna to automatic.

  • zakres

    ZoomSettingsScope opcjonalnie

    Określa, czy zmiany powiększenia są zachowywane w źródle strony czy mają zastosowanie tylko na tej karcie. Domyślnie ustawione jest per-origin w trybie automatic, a w innym przypadku per-tab.

ZoomSettingsMode

Chrome 44 lub nowszy

Określa sposób obsługi zmian powiększenia, czyli określa, która strona jest odpowiedzialna za rzeczywiste skalowanie strony. Wartość domyślna to automatic.

Typ wyliczeniowy

„automatycznie”
Zmiany powiększenia są obsługiwane automatycznie przez przeglądarkę.

„manual”
Przesłonięć automatyczne są ignorowane. Zdarzenie onZoomChange nadal będzie wysyłane, a rozszerzenie musi na nie reagować i ręcznie skalować stronę. Ten tryb nie obsługuje powiększania per-origin, więc ignoruje ustawienie powiększenia scope i zakłada per-tab.

„disabled” (wyłączone)
Wyłącza wszystkie opcje powiększania na karcie. Karta wraca do domyślnego poziomu powiększenia, a wszystkie próby zmiany powiększenia są ignorowane.

ZoomSettingsScope

Chrome 44 lub nowszy

Określa, czy zmiany powiększenia są zachowywane w źródle strony czy mają zastosowanie tylko na tej karcie. Domyślnie ustawione jest per-origin w trybie automatic, a w innym przypadku per-tab.

Typ wyliczeniowy

„Per-origin”
Zmiany powiększenia są zachowywane w źródle powiększonej strony, co oznacza, że wszystkie inne karty, które otwierają tę samą stronę, są również powiększone. Ponadto zmiany powiększenia per-origin są zapisywane w źródle, co oznacza, że podczas przechodzenia na inne strony w tym samym źródle wszystkie są powiększone o ten sam współczynnik. Zakres per-origin jest dostępny tylko w trybie automatic.

„Na karcie”
Zmiany powiększenia mają zastosowanie tylko na tej karcie, a zmiany powiększenia na innych kartach nie wpływają na powiększenie tej karty. Ponadto podczas nawigacji resetowane są zmiany powiększenia per-tab; podczas nawigacji na karcie zawsze wczytywane są strony z odpowiednimi współczynnikami powiększenia per-origin.

Właściwości

MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND

Chrome 92 lub nowszy

Maksymalna liczba wywołań funkcji captureVisibleTab na sekundę. captureVisibleTab jest drogi i nie należy go wywoływać zbyt często.

Wartość

2

TAB_ID_NONE

Chrome 46 lub nowszy

Identyfikator, który reprezentuje brak karty przeglądarki.

Wartość

-1

TAB_INDEX_NONE

Chrome 123+

Indeks, który reprezentuje brak indeksu karty w elemencie tab_strip.

Wartość

-1

Metody

captureVisibleTab()

Obietnice
chrome.tabs.captureVisibleTab(
  windowId?: number,
  options?: ImageDetails,
  callback?: function,
)

Wykonuje zrzut ekranu widocznego obszaru na aktywnej karcie w określonym oknie. Aby wywołać tę metodę, rozszerzenie musi mieć uprawnienia <all_urls> lub activeTab. Oprócz stron, do których rozszerzenia mają normalny dostęp, ta metoda pozwala im przechwytywać strony zawierające dane wrażliwe, które są w innym przypadku ograniczone, w tym strony z adresami chrome:, inne strony rozszerzeń i adresy URL z dane:. Te strony zawierające dane wrażliwe można przechwytywać tylko przy użyciu uprawnienia activeTab. Adresy URL plików mogą być przechwytywane tylko wtedy, gdy rozszerzeniu przyznano dostęp do plików.

Parametry

  • windowId

    number opcjonalny

    Okno docelowe. Domyślnie jest to bieżące okno.

  • Opcje

    ImageDetails opcjonalnie

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (dataUrl: string) => void

    • dataUrl

      ciąg znaków

      Adres URL danych, który koduje obraz widocznego obszaru przechwyconej karty. Może być przypisany do właściwości „src” elementu HTML img w celu wyświetlenia.

Zwroty

  • Promise<string>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

connect()

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

Połącza się ze skryptami treści na określonej karcie. Zdarzenie runtime.onConnect jest wywoływane w każdym skrypcie treści uruchomionym na określonej karcie w bieżącym rozszerzeniu. Więcej informacji znajdziesz w artykule Komunikowanie się za pomocą skryptu treści.

Parametry

  • tabId

    liczba

  • connectInfo

    object opcjonalne

    • documentId

      string opcjonalny

      Chrome w wersji 106 lub nowszej

      Otwórz port dla określonego dokumentu oznaczonego documentId, a nie wszystkich ramek na karcie.

    • frameId

      number opcjonalny

      Otwórz port na określony krok wskazany przez frameId, zamiast wszystkich kroków na karcie.

    • nazwa

      string opcjonalny

      Jest przekazywany do onConnect w przypadku skryptów treści, które nasłuchują zdarzenia połączenia.

Zwroty

  • Port, który może służyć do komunikacji ze skryptami treści uruchomionymi na określonej karcie. Zdarzenie runtime.Port portu jest wywoływane, gdy karta jest zamknięta lub nie istnieje.

create()

Obietnice
chrome.tabs.create(
  createProperties: object,
  callback?: function,
)

Tworzy nową kartę.

Parametry

  • createProperties

    Obiekt

    • aktywna

      logiczna opcjonalna

      Określa, czy karta ma stać się aktywną kartą w oknie. Nie ma wpływu na to, czy okno jest aktywne (patrz windows.update). Domyślnie ustawiona wartość to true.

    • indeks

      number opcjonalny

      Położenie karty w oknie. Podana wartość jest ograniczona do zakresu od 0 do liczby kart w oknie.

    • openerTabId

      number opcjonalny

      Identyfikator karty, która otworzyła tę kartę. Jeśli jest określona, karta otwierająca musi być w tym samym oknie co nowo utworzona karta.

    • przypięty

      wartość logiczna opcjonalna

      Określa, czy karta ma być przypięta. Domyślna wartość to false

    • wybrano

      logiczna opcjonalna

      Wycofany

      Użyj słowa active (aktywny).

      Określa, czy karta ma być wybrana w oknie. Domyślna wartość to true

    • URL

      string opcjonalny

      Adres URL, do którego ma przejść karta. Pełne adresy URL muszą zawierać schemat (np. 'http://www.google.com', a nie 'www.google.com'). Względne adresy URL są względne do bieżącej strony w rozszerzeniu. Domyślnie jest to strona Nowa karta.

    • windowId

      number opcjonalny

      Okno, w którym można utworzyć nową kartę. Domyślnie jest to bieżące okno.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (tab: Tab) => void

Zwroty

  • Obietnica<karta>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

detectLanguage()

Obietnice
chrome.tabs.detectLanguage(
  tabId?: number,
  callback?: function,
)

Wykrywanie głównego języka treści na karcie.

Parametry

  • tabId

    number opcjonalny

    Domyślnie jest to aktywna karta w bieżącym oknie.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (language: string) => void

    • language

      ciąg znaków

      Kod języka ISO, np. en lub fr. Pełną listę języków obsługiwanych przez tę metodę znajdziesz w stałym polu kLanguageInfoTable. Sprawdzane są kolumny od 2. do 4. i zwracana jest pierwsza niepusta wartość, z wyjątkiem języka chińskiego uproszczonego, dla którego zwracana jest wartość zh-CN. W przypadku nieznanego lub nieokreślonego języka zwracana jest wartość und.

Zwroty

  • Promise<string>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

discard()

Obietnice Chrome 54 lub nowszy
chrome.tabs.discard(
  tabId?: number,
  callback?: function,
)

Odrzuca kartę z pamięci. Odrzucone karty są nadal widoczne na pasku kart i po ich włączeniu są ponownie wczytywane.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, która ma zostać odrzucona. Jeśli jest określona, karta jest odrzucana, chyba że jest aktywna lub została już odrzucona. Jeśli nie zostanie podany, przeglądarka odrzuci najmniej ważną kartę. Może się to nie udać, jeśli nie ma kart, które można odrzucić.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (tab?: Tab) => void

    • tabulator

      Tabulator opcjonalny

      Karta odrzucona, jeśli została odrzucona. W przeciwnym razie nieokreślona.

Zwroty

  • Obietkwarzeczenie<Tab | nieokreślony>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

duplicate()

Obietnice
chrome.tabs.duplicate(
  tabId: number,
  callback?: function,
)

Duplikuje kartę.

Parametry

  • tabId

    liczba

    Identyfikator karty, którą chcesz zduplikować.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (tab?: Tab) => void

    • tabulator

      Tabulator opcjonalny

      Szczegóły dotyczące zduplikowanej karty. Obiekt tabs.Tab nie zawiera elementów url, pendingUrl, titlefavIconUrl, jeśli nie określono uprawnienia "tabs".

Zwroty

  • Obietkwarzeczenie<Tab | nieokreślony>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

executeScript()

Obietki typu Promise &leq; MV2 Wycofane w Chrome 91
chrome.tabs.executeScript(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)

Zastąpione przez scripting.executeScript w pliku manifestu V3.

Wstrzykuje kod JavaScript na stronie. Szczegółowe informacje znajdziesz w sekcji wstawiania programowego w dokumencie dotyczącym skryptów treści.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, na której ma być uruchomiony skrypt; domyślnie jest to aktywna karta bieżącego okna.

  • szczegóły

    Szczegóły skryptu do wykonania. Musisz ustawić kod lub plik, ale nie możesz ustawić obu naraz.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (result?: any[]) => void

    • wynik

      any[] opcjonalny

      Wynik skryptu w każdej wstrzykniętej klatce.

Zwroty

  • Obietkw<dowolna tablica | niezdefiniowana>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

get()

Obietnice
chrome.tabs.get(
  tabId: number,
  callback?: function,
)

Pobiera szczegóły określonej karty.

Parametry

  • tabId

    liczba

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (tab: Tab) => void

Zwroty

  • Obietnica<karta>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

getAllInWindow()

Obietnice &leq; MV2 Wycofane
chrome.tabs.getAllInWindow(
  windowId?: number,
  callback?: function,
)

Użyj tabs.query {windowId: windowId}.

Pobiera szczegóły wszystkich kart w określonym oknie.

Parametry

  • windowId

    number opcjonalny

    Domyślnie jest to bieżące okno.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (tabs: Tab[]) => void

Zwroty

  • Obietnice<karta[]>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

getCurrent()

Obietnice
chrome.tabs.getCurrent(
  callback?: function,
)

Pobiera kartę, z której pochodzi wywołanie skryptu. Zwraca undefined, jeśli jest wywoływany z kontekstu innego niż karta (np. strona w tle lub okno).

Parametry

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (tab?: Tab) => void

Zwroty

  • Obietkwarzeczenie<Tab | nieokreślony>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

getSelected()

Obietnice &leq; MV2 Wycofane
chrome.tabs.getSelected(
  windowId?: number,
  callback?: function,
)

Użyj tabs.query {active: true}.

Pobiera kartę wybraną w określonym oknie.

Parametry

  • windowId

    number opcjonalny

    Domyślnie jest to bieżące okno.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (tab: Tab) => void

Zwroty

  • Obietnica<karta>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

getZoom()

Obietnice
chrome.tabs.getZoom(
  tabId?: number,
  callback?: function,
)

Pobiera bieżący współczynnik powiększenia na określonej karcie.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, z której ma zostać pobrany bieżący współczynnik powiększenia; domyślnie jest to aktywna karta bieżącego okna.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (zoomFactor: number) => void

    • zoomFactor

      liczba

      Bieżący współczynnik powiększenia karty.

Zwroty

  • Obietnice<number>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

getZoomSettings()

Obietnice
chrome.tabs.getZoomSettings(
  tabId?: number,
  callback?: function,
)

Pobiera bieżące ustawienia powiększenia na określonej karcie.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, z której mają zostać pobrane bieżące ustawienia powiększenia; domyślnie jest to aktywna karta w bieżącym oknie.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (zoomSettings: ZoomSettings) => void

    • zoomSettings

      bieżące ustawienia powiększenia karty;

Zwroty

  • Promise<ZoomSettings>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

goBack()

Obietnice Chrome 72 i nowsze
chrome.tabs.goBack(
  tabId?: number,
  callback?: function,
)

Wróć do poprzedniej strony, jeśli jest dostępna.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, do której chcesz wrócić; domyślnie jest to wybrana karta w bieżącym oknie.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

goForward()

Obietnice Chrome 72 i nowsze
chrome.tabs.goForward(
  tabId?: number,
  callback?: function,
)

Przejdź do następnej strony, jeśli jest dostępna.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, do której chcesz przejść; domyślnie jest to wybrana karta w bieżącym oknie.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

group()

Obietnica Chrome 88 lub nowszy
chrome.tabs.group(
  options: object,
  callback?: function,
)

Dodaje co najmniej 1 kartę do określonej grupy lub, jeśli nie została określona żadna grupa, dodaje podane karty do nowo utworzonej grupy.

Parametry

  • Opcje

    Obiekt

    • createProperties

      object opcjonalne

      Konfiguracje służące do tworzenia grupy. Nie można go użyć, jeśli parametr groupId jest już określony.

      • windowId

        number opcjonalny

        Okno nowej grupy. Domyślnie jest to bieżące okno.

    • groupId

      number opcjonalny

      Identyfikator grupy, do której chcesz dodać karty. Jeśli nie zostanie określona, zostanie utworzona nowa grupa.

    • tabIds

      liczba | [liczba, ...liczba[]]

      Identyfikator karty lub lista identyfikatorów kart, które mają zostać dodane do określonej grupy.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (groupId: number) => void

    • groupId

      liczba

      Identyfikator grupy, do której zostały dodane karty.

Zwroty

  • Obietnice<number>

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

highlight()

Obietnice
chrome.tabs.highlight(
  highlightInfo: object,
  callback?: function,
)

Podświetla określone karty i skupia się na pierwszej z nich. Jeśli wybrana karta jest obecnie aktywna, nie będzie to miało żadnego wpływu.

Parametry

  • highlightInfo

    Obiekt

    • karty

      liczba | liczba[]

      Co najmniej 1 indeks karty do podświetlenia.

    • windowId

      number opcjonalny

      Okno zawierające karty.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (window: Window) => void

    • okno

      Zawiera informacje o oknie, którego karty zostały wyróżnione.

Zwroty

  • Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

insertCSS()

Obietki typu Promise &leq; MV2 Wycofane w Chrome 91
chrome.tabs.insertCSS(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)

Zastąpione przez scripting.insertCSS w pliku manifestu V3.

Wstrzykuje kod CSS na stronie. Style wstawiane za pomocą tej metody można usunąć za pomocą scripting.removeCSS. Szczegółowe informacje znajdziesz w sekcji wstawiania programowego w dokumencie dotyczącym skryptów treści.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, na której ma zostać wstawiony kod CSS; domyślnie jest to aktywna karta bieżącego okna.

  • szczegóły

    Szczegóły tekstu CSS do wstawienia. Musisz ustawić kod lub plik, ale nie możesz ustawić obu naraz.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

move()

Obietnice
chrome.tabs.move(
  tabIds: number | number[],
  moveProperties: object,
  callback?: function,
)

Przenosi co najmniej 1 kartę na nowe miejsce w oknie lub do nowego okna. Pamiętaj, że karty można przenosić tylko do i z normalnych okien (window.type === „normal”).

Parametry

  • tabIds

    liczba | liczba[]

    Identyfikator karty lub lista identyfikatorów kart do przeniesienia.

  • moveProperties

    Obiekt

    • indeks

      liczba

      Miejsce, do którego chcesz przenieść okno. Aby umieścić kartę na końcu okna, użyj -1.

    • windowId

      number opcjonalny

      Domyślnie jest to okno, w którym znajduje się karta.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

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

    • karty

      Karta | Karta[]

      Szczegóły dotyczące przeniesionych kart.

Zwroty

  • Obietnica<Karta | Karta[]>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

query()

Obietnice
chrome.tabs.query(
  queryInfo: object,
  callback?: function,
)

Pobiera wszystkie karty, które mają określone właściwości, lub wszystkie karty, jeśli nie określono żadnych właściwości.

Parametry

  • queryInfo

    Obiekt

    • aktywna

      wartość logiczna opcjonalna

      czy karty są aktywne w ich oknach.

    • audible

      wartość logiczna opcjonalna

      Chrome 45 lub nowszy

      czy karty są słyszalne.

    • autoDiscardable

      wartość logiczna opcjonalna

      Chrome 54 lub nowszy

      Określa, czy karty mogą być automatycznie usuwane przez przeglądarkę, gdy zasoby są niskie.

    • currentWindow

      wartość logiczna opcjonalna

      Czy karty znajdują się w bieżącym oknie.

    • odrzucono

      logiczna opcjonalna

      Chrome 54 lub nowszy

      Określa, czy karty mają zostać odrzucone. Odrzucona karta to karta, której zawartość została wczytana z pamięci, ale nadal jest widoczna na pasku kart. Treści są ponownie wczytywane przy następnym uruchomieniu.

    • zamrożony

      wartość logiczna opcjonalna

      Oczekuje

      Czy karty są wstrzymane. Zablokowana karta nie może wykonywać zadań, w tym modułów obsługi zdarzeń ani zegarów. Jest widoczna na pasku kart, a jej zawartość jest wczytana do pamięci. Po aktywacji jest odblokowany.

    • groupId

      number opcjonalny

      Chrome 88 lub nowszy

      Identyfikator grupy, w której znajdują się karty, lub tabGroups.TAB_GROUP_ID_NONE w przypadku kart niesklasyfikowanych.

    • wyróżniona

      wartość logiczna opcjonalna

      Określa, czy karty są wyróżnione.

    • indeks

      number opcjonalny

      położenie kart w ich oknach.

    • lastFocusedWindow

      wartość logiczna opcjonalna

      Czy karty znajdują się w ostatnim oknie, na którym był fokus.

    • Wyciszono

      wartość logiczna opcjonalna

      Chrome 45 lub nowszy

      Czy karty są wyciszone.

    • przypięty

      wartość logiczna opcjonalna

      Czy karty są przypięte.

    • status

      TabStatus opcjonalnie

      Stan wczytywania karty.

    • tytuł

      string opcjonalny

      dopasowywać tytuły stron do wzorca; Ta właściwość jest ignorowana, jeśli rozszerzenie nie ma uprawnienia "tabs".

    • URL

      ciąg znaków | ciągi znaków[] opcjonalnie

      Dopasowuj karty do co najmniej 1 wzorca adresu URL. Identyfikatory fragmentów nie pasują do siebie. Ta właściwość jest ignorowana, jeśli rozszerzenie nie ma uprawnienia "tabs".

    • windowId

      number opcjonalny

      Identyfikator nadrzędnego okna lub windows.WINDOW_ID_CURRENT w przypadku bieżącego okna.

    • windowType

      WindowType opcjonalny

      Typ okna, w którym znajdują się karty.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (result: Tab[]) => void

Zwroty

  • Obietnice<karta[]>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

reload()

Obietnice
chrome.tabs.reload(
  tabId?: number,
  reloadProperties?: object,
  callback?: function,
)

Załaduj ponownie kartę.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty do ponownego załadowania; domyślnie wybrana karta w bieżącym oknie.

  • reloadProperties

    object opcjonalne

    • bypassCache

      wartość logiczna opcjonalna

      Określa, czy pominąć buforowanie lokalne. Domyślna wartość to false.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

remove()

Obietnice
chrome.tabs.remove(
  tabIds: number | number[],
  callback?: function,
)

Zamyka co najmniej 1 kartę.

Parametry

  • tabIds

    liczba | liczba[]

    Identyfikator karty lub lista identyfikatorów kart do zamknięcia.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

removeCSS()

Obietnice Chrome 87 i nowsze &leq; MV2 Wycofane w Chrome 91
chrome.tabs.removeCSS(
  tabId?: number,
  details: DeleteInjectionDetails,
  callback?: function,
)

Zastąpione przez scripting.removeCSS w pliku manifestu V3.

Usuwa z strony kod CSS, który został wcześniej wstrzyknięty przez wywołanie scripting.insertCSS.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, z której chcesz usunąć usługę porównywania cen. Domyślnie jest to aktywna karta w bieżącym oknie.

  • Szczegóły tekstu CSS, który chcesz usunąć. Musisz ustawić kod lub plik, ale nie możesz ustawić obu naraz.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

sendMessage()

Obietnice
chrome.tabs.sendMessage(
  tabId: number,
  message: any,
  options?: object,
  callback?: function,
)

Wysyła jedną wiadomość do skryptów treści na określonej karcie z opcjonalnym wywołaniem zwrotnym, które zostanie wykonane po otrzymaniu odpowiedzi. Zdarzenie runtime.onMessage jest wywoływane w każdym skrypcie treści uruchomionym na określonej karcie w bieżącym rozszerzeniu.

Parametry

  • tabId

    liczba

  • wiadomość

    każdy

    Wiadomość do wysłania. Ta wiadomość powinna być obiektem JSON.

  • Opcje

    object opcjonalne

    • documentId

      string opcjonalny

      Chrome w wersji 106 lub nowszej

      Wysyłanie wiadomości do konkretnego dokumentu oznaczonego jako documentId, a nie do wszystkich ramek na karcie.

    • frameId

      number opcjonalny

      Wysyłanie wiadomości do konkretnej ramki zidentyfikowanej za pomocą frameId, a nie do wszystkich ramek na karcie.

  • wywołanie zwrotne

    function opcjonalny

    Chrome 99+

    Parametr callback ma postać:

    (response: any) => void

    • odpowiedź

      każdy

      Obiekt odpowiedzi JSON wysłany przez moduł obsługi wiadomości. Jeśli podczas łączenia z określoną kartą wystąpi błąd, funkcja wywołania zwrotnego zostanie wywołana bez argumentów, a wartość runtime.lastError zostanie ustawiona na komunikat o błędzie.

Zwroty

  • Promise<any>

    Chrome 99+

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

sendRequest()

Obietnice &leq; MV2 Wycofane
chrome.tabs.sendRequest(
  tabId: number,
  request: any,
  callback?: function,
)

Użyj runtime.sendMessage.

Wysyła jedno żądanie do skryptów treści na określonej karcie z opcjonalnym wywołaniem zwrotnym, które ma być wykonane po otrzymaniu odpowiedzi. Zdarzenie extension.onRequest jest wywoływane w każdym skrypcie treści uruchomionym na określonej karcie w bieżącym rozszerzeniu.

Parametry

  • tabId

    liczba

  • żądanie

    każdy

  • wywołanie zwrotne

    function opcjonalny

    Chrome 99+

    Parametr callback ma postać:

    (response: any) => void

    • odpowiedź

      każdy

      Obiekt odpowiedzi JSON wysłany przez moduł obsługi żądania. Jeśli podczas łączenia z określoną kartą wystąpi błąd, funkcja wywołania zwrotnego zostanie wywołana bez argumentów, a wartość runtime.lastError zostanie ustawiona na komunikat o błędzie.

Zwroty

  • Promise<any>

    Chrome 99+

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

setZoom()

Obietnice
chrome.tabs.setZoom(
  tabId?: number,
  zoomFactor: number,
  callback?: function,
)

Powiększa określoną kartę.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, którą chcesz powiększyć; domyślnie jest to aktywna karta bieżącego okna.

  • zoomFactor

    liczba

    Nowy współczynnik powiększenia. Wartość 0 ustawia kartę na bieżący domyślny współczynnik powiększenia. Wartości większe niż 0 określają współczynnik powiększenia (możliwe, że inny niż domyślny) dla karty.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

setZoomSettings()

Obietnice
chrome.tabs.setZoomSettings(
  tabId?: number,
  zoomSettings: ZoomSettings,
  callback?: function,
)

Ustawia ustawienia powiększenia dla określonej karty, które określają sposób obsługi zmian powiększenia. Te ustawienia są resetowane do wartości domyślnych po przejściu na kartę.

Parametry

  • tabId

    number opcjonalny

    Identyfikator karty, dla której mają zostać zmienione ustawienia zooma. Domyślnie jest to aktywna karta w bieżącym oknie.

  • zoomSettings

    Określa, jak i w jakim zakresie są obsługiwane zmiany powiększenia.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

ungroup()

Obietnica Chrome 88 lub nowszy
chrome.tabs.ungroup(
  tabIds: number | [number, ...number[]],
  callback?: function,
)

Usuwa co najmniej 1 kartę z odpowiednich grup. Jeśli jakiekolwiek grupy okażą się puste, zostaną usunięte.

Parametry

  • tabIds

    liczba | [liczba, ...liczba[]]

    Identyfikator karty lub lista identyfikatorów kart do usunięcia z odpowiednich grup.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    () => void

Zwroty

  • Obietnica<void>

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

update()

Obietnice
chrome.tabs.update(
  tabId?: number,
  updateProperties: object,
  callback?: function,
)

Modyfikuje właściwości karty. Właściwości, które nie są określone w elementach updateProperties, nie są modyfikowane.

Parametry

  • tabId

    number opcjonalny

    Domyślnie jest to wybrana karta w bieżącym oknie.

  • updateProperties

    Obiekt

    • aktywna

      wartość logiczna opcjonalna

      Określa, czy karta ma być aktywna. Nie ma wpływu na to, czy okno jest aktywne (patrz windows.update).

    • autoDiscardable

      wartość logiczna opcjonalna

      Chrome 54 lub nowszy

      Określa, czy przeglądarka powinna automatycznie odrzucić kartę, gdy zabraknie zasobów.

    • wyróżniona

      wartość logiczna opcjonalna

      Dodaje lub usuwa kartę z bieżącego zaznaczenia.

    • Wyciszono

      wartość logiczna opcjonalna

      Chrome 45 lub nowszy

      Określa, czy karta ma być wyciszona.

    • openerTabId

      number opcjonalny

      Identyfikator karty, która otworzyła tę kartę. Jeśli jest określona, karta otwierająca musi znajdować się w tym samym oknie co ta karta.

    • przypięty

      wartość logiczna opcjonalna

      Określa, czy karta ma być przypięta.

    • wybrano

      logiczna opcjonalna

      Wycofany

      Użyj podświetlonego.

      Określa, czy karta ma być wybrana.

    • URL

      string opcjonalny

      Adres URL, do którego ma prowadzić karta. Adresy URL kodu JavaScript nie są obsługiwane. Zamiast nich używaj scripting.executeScript.

  • wywołanie zwrotne

    function opcjonalny

    Parametr callback ma postać:

    (tab?: Tab) => void

    • tabulator

      Tabulator opcjonalny

      Szczegóły dotyczące zaktualizowanej karty. Obiekt tabs.Tab nie zawiera elementów url, pendingUrl, titlefavIconUrl, jeśli nie określono uprawnienia "tabs".

Zwroty

  • Obietkwarzeczenie<Tab | nieokreślony>

    Chrome 88 lub nowszy

    Obietnice są obsługiwane tylko w przypadku pliku manifestu w wersji 3 lub nowszej, na innych platformach należy używać wywołań zwrotnych.

Wydarzenia

onActivated

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

Wyzwala się, gdy aktywna karta w oknie ulegnie zmianie. Pamiętaj, że w momencie wywołania tego zdarzenia adres URL karty może nie być ustawiony, ale możesz słuchać zdarzeń onUpdated, aby otrzymywać powiadomienia o ustawieniu adresu URL.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

    (activeInfo: object) => void

    • activeInfo

      Obiekt

      • tabId

        liczba

        Identyfikator karty, która stała się aktywna.

      • windowId

        liczba

        Identyfikator okna, w którym nastąpiła zmiana aktywnej karty.

onActiveChanged

&leq; MV2 Wycofane
chrome.tabs.onActiveChanged.addListener(
  callback: function,
)

Użyj tabs.onActivated.

Wyzwala się, gdy wybrana karta w oknie ulegnie zmianie. Pamiętaj, że w momencie wywołania tego zdarzenia adres URL karty może nie być ustawiony, ale możesz odbierać powiadomienia o ustawieniu adresu URL, słuchając zdarzeń tabs.onUpdated.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

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

    • tabId

      liczba

    • selectInfo

      Obiekt

      • windowId

        liczba

        Identyfikator okna, w którym nastąpiła zmiana wybranej karty.

onAttached

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

Wywoływany, gdy karta jest przypięta do okna, na przykład dlatego, że została przeniesiona między oknami.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

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

    • tabId

      liczba

    • attachInfo

      Obiekt

      • newPosition

        liczba

      • newWindowId

        liczba

onCreated

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

Uruchamiane, gdy utworzysz kartę. Pamiętaj, że adres URL karty i przynależność do grupy kart mogą nie być ustawione w momencie wywołania tego zdarzenia, ale możesz odbierać zdarzenia onUpdated, aby otrzymywać powiadomienia o ustawieniu adresu URL lub dodaniu karty do grupy kart.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

    (tab: Tab) => void

onDetached

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

Wywoływany, gdy karta jest odłączona od okna, na przykład dlatego, że została przeniesiona między oknami.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

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

    • tabId

      liczba

    • detachInfo

      Obiekt

      • oldPosition

        liczba

      • oldWindowId

        liczba

onHighlightChanged

&leq; MV2 Wycofane
chrome.tabs.onHighlightChanged.addListener(
  callback: function,
)

Użyj tabs.onHighlighted.

Wywoływany, gdy podświetlone lub wybrane karty w oknie ulegną zmianie.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

    (selectInfo: object) => void

    • selectInfo

      Obiekt

      • tabIds

        number[]

        wszystkie wyróżnione karty w oknie.

      • windowId

        liczba

        Okno, którego karty uległy zmianie.

onHighlighted

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

Wywoływany, gdy podświetlone lub wybrane karty w oknie ulegną zmianie.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

    (highlightInfo: object) => void

    • highlightInfo

      Obiekt

      • tabIds

        number[]

        wszystkie wyróżnione karty w oknie.

      • windowId

        liczba

        Okno, którego karty uległy zmianie.

onMoved

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

Wywoływane, gdy karta jest przenoszona w oknie. Wywoływane jest tylko jedno zdarzenie przenoszenia, które reprezentuje kartę przeniesioną bezpośrednio przez użytkownika. Zdarzenia przenoszenia nie są wywoływane w przypadku innych kart, które muszą zostać przeniesione w odpowiedzi na ręczne przeniesienie karty. To zdarzenie nie jest wywoływane, gdy karta jest przenoszona między oknami. Więcej informacji znajdziesz w artykule tabs.onDetached.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

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

    • tabId

      liczba

    • moveInfo

      Obiekt

      • fromIndex

        liczba

      • toIndex

        liczba

      • windowId

        liczba

onRemoved

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

Uruchamiane po zamknięciu karty.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

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

    • tabId

      liczba

    • removeInfo

      Obiekt

      • isWindowClosing

        wartość logiczna

        Wartość true, gdy karta została zamknięta, ponieważ zamknięto jej okno nadrzędne.

      • windowId

        liczba

        Okno, którego karta została zamknięta.

onReplaced

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

Wywoływany, gdy karta jest zastępowana inną kartą z powodu prerenderowania lub natychmiastowego ładowania.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

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

    • addedTabId

      liczba

    • removedTabId

      liczba

onSelectionChanged

&leq; MV2 Wycofane
chrome.tabs.onSelectionChanged.addListener(
  callback: function,
)

Użyj tabs.onActivated.

Wyzwala się, gdy wybrana karta w oknie ulegnie zmianie.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

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

    • tabId

      liczba

    • selectInfo

      Obiekt

      • windowId

        liczba

        Identyfikator okna, w którym nastąpiła zmiana wybranej karty.

onUpdated

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

Wywoływane, gdy karta jest aktualizowana.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

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

    • tabId

      liczba

    • changeInfo

      Obiekt

      • audible

        wartość logiczna opcjonalna

        Chrome 45 lub nowszy

        Nowy stan dźwiękowy karty.

      • autoDiscardable

        wartość logiczna opcjonalna

        Chrome 54 lub nowszy

        Nowy stan karty, który można automatycznie odrzucić.

      • odrzucono

        logiczna opcjonalna

        Chrome 54 lub nowszy

        Nowy stan odrzucenia karty.

      • favIconUrl

        string opcjonalny

        Nowy adres URL ikony karty.

      • zamrożony

        wartość logiczna opcjonalna

        Oczekuje

        Nowy stan zamrożenia karty.

      • groupId

        number opcjonalny

        Chrome 88 lub nowszy

        Nowa grupa karty.

      • mutedInfo

        MutedInfo opcjonalnie

        Chrome 46 lub nowszy

        Nowy stan wyciszenia karty i przyczyna zmiany.

      • przypięty

        wartość logiczna opcjonalna

        Nowy stan przypięcia karty.

      • status

        TabStatus opcjonalnie

        Stan wczytywania karty.

      • tytuł

        string opcjonalny

        Chrome 48+

        Nowy tytuł karty.

      • URL

        string opcjonalny

        Adres URL karty, jeśli się zmienił.

    • tabulator

onZoomChange

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

Uruchamiane, gdy karta jest powiększana.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback ma postać:

    (ZoomChangeInfo: object) => void

    • ZoomChangeInfo

      Obiekt

      • newZoomFactor

        liczba

      • oldZoomFactor

        liczba

      • tabId

        liczba

      • zoomSettings