chrome.tabs

Opis

Interfejs API chrome.tabs umożliwia interakcję z systemem kart przeglądarki. Przy użyciu tego interfejsu API możesz tworzyć, modyfikować i zmieniać kolejność kart w przeglądarce.

Interfejs Tabs API nie tylko umożliwia manipulowanie kartami i zarządzanie nimi, ale też wykrywanie języka kart, robienie zrzutów ekranu i komunikowanie się ze skryptami zawartości karty.

Uprawnienia

Większość funkcji nie wymaga uprawnień do korzystania. Może to być na przykład utworzenie nowej karty, ponowne jej wczytanie lub przejście pod inny adres URL.

Podczas pracy z interfejsem Tabs API deweloperzy powinni znać 3 uprawnienia.

Uprawnienie „Karty”

To uprawnienie nie przyznaje dostępu do przestrzeni nazw chrome.tabs. Zamiast tego umożliwia rozszerzeniu wywoływanie funkcji tabs.query() dla 4 poufnych usług w instancjach tabs.Tab: url, pendingUrl, title i favIconUrl.

{
  "name": "My extension",
  ...
  "permissions": [
    "tabs"
  ],
  ...
}
Uprawnienia dotyczące hosta

Uprawnienia hosta umożliwiają rozszerzeniu odczytywanie 4 poufnych właściwości tabs.Tab pasującej karty i wysyłanie dotyczących ich zapytań. Mogą też wchodzić w bezpośrednie interakcje z pasującymi kartami za pomocą takich metod jak tabs.captureVisibleTab(), tabs.executeScript(), tabs.insertCSS() czy tabs.removeCSS().

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

W odpowiedzi na wywołanie użytkownika activeTab przyznaje temu rozszerzeniu tymczasowe uprawnienia hosta dla bieżącej karty. W przeciwieństwie do uprawnień hosta activeTab nie wywołuje żadnych ostrzeżeń.

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

Przykłady zastosowań

W sekcjach poniżej znajdziesz kilka typowych przypadków użycia.

Otwieranie strony rozszerzenia w nowej karcie

Częstym wzorcem używania rozszerzeń jest otwieranie strony wprowadzającej w nowej karcie, gdy dane rozszerzenie jest zainstalowane. Poniższy przykład pokazuje, jak to zrobić.

background.js:

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

Pobierz bieżącą kartę

Ten przykład pokazuje, jak skrypt service worker rozszerzenia może pobrać aktywną kartę z aktualnie wybranego okna (lub ostatnio wybranego okna, jeśli nie jest zaznaczone żadne okno Chrome). Zwykle można ją określić 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 wybraną kartę

Ten przykład pokazuje, jak rozszerzenie może przełączać stan wyciszenia na danej karcie.

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

Przenieś bieżącą kartę na pierwszą pozycję po kliknięciu

Ten przykład pokazuje, jak przenieść kartę w trakcie przeciągania. Chociaż w tym przykładzie użyto funkcji chrome.tabs.move, możesz użyć tego samego wzorca oczekiwania dla 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.");
      }
    });
  }

Przekaż wiadomość do skryptu zawierającego treść wybranej karty

Ten przykład pokazuje, jak skrypt service worker rozszerzenia może komunikować się ze skryptami treści na określonych kartach przeglądarki za pomocą wywołania 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 i nowsze wersje

Stan wyciszenia karty i przyczyna ostatniej zmiany stanu.

Właściwości

  • extensionId

    ciąg znaków opcjonalny

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

  • Wyciszono

    boolean

    Określa, czy karta jest wyciszona (uniemożliwi odtwarzanie dźwięku). Karta może być wyciszona, nawet jeśli nie została odtworzona lub nie odtwarza dźwięku. Odpowiednik tego, czy świeci się wskaźnik „wyciszonego dźwięku”.

  • powód

    opcjonalny MutedInfoReason

    Przyczyna wyciszenia lub wyłączenia wyciszenia karty. Nie ustawiono, jeśli stan wyciszenia karty nigdy nie był zmieniany.

MutedInfoReason

Chrome 46 i nowsze wersje

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

Typ wyliczeniowy

"user"
Działanie wejściowe użytkownika ustawiło stan wyciszenia.

"capture"
Rozpoczęto przechwytywanie karty, wymuszając zmianę stanu wyciszenia.

„extension”
Rozszerzenie identyfikowane przez pole ExtensionsId ustawia stan wyciszenia.

Tab

Właściwości

  • aktywny krok

    boolean

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

  • audible

    wartość logiczna opcjonalna

    Chrome 45 i nowsze wersje

    Określa, czy w ciągu ostatnich kilku sekund karta wygenerowała dźwięk (ale może nie być słyszalny, jeśli jest też wyciszony). Odpowiednik tego, czy świeci się wskaźnik „Dźwięk głośnika”.

  • autoDiscardable

    boolean

    Chrome w wersji 54 i nowszych

    Określa, czy karta może zostać automatycznie odrzucona przez przeglądarkę przy niskim poziomie zasobów.

  • odrzucono

    boolean

    Chrome w wersji 54 i nowszych

    Wskazuje, czy karta została odrzucona. Karta odrzucona to taka, której zawartość została wyładowana z pamięci, ale nadal jest widoczna na pasku kart. Jego zawartość zostanie wczytana ponownie przy następnym aktywacji.

  • favIconUrl

    ciąg znaków opcjonalny

    Adres URL favikony karty. Ta właściwość jest dostępna tylko wtedy, gdy plik manifestu rozszerzenia zawiera uprawnienie "tabs". Pusty ciąg może też być pusty podczas wczytywania karty.

  • groupId

    Liczba

    Chrome 88 i nowsze wersje

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

  • wysokość

    Liczba opcjonalnie

    Wysokość karty w pikselach.

  • wyróżniona

    boolean

    Określa, czy karta jest podświetlona.

  • id

    Liczba opcjonalnie

    Identyfikator karty. Identyfikatory kart są unikalne w ramach sesji przeglądarki. W pewnych okolicznościach do karty może nie być przypisany identyfikator, np. podczas wysyłania zapytań dotyczących obcych kart za pomocą interfejsu API sessions, co oznacza, że może być widoczny identyfikator sesji. Identyfikator karty można też ustawić na chrome.tabs.TAB_ID_NONE w przypadku okien aplikacji i narzędzi deweloperskich.

  • incognito

    boolean

    Informacja, czy karta jest w oknie incognito.

  • indeks

    Liczba

    Indeks zaczynający się od zera karty znajdującej się w jej oknie.

  • lastAccessed

    Liczba opcjonalnie

    Chrome 121 i nowsze wersje

    Czas ostatniego uzyskania dostępu do karty jako liczba milisekund od początku epoki.

  • mutedInfo

    Opcjonalny MutedInfo

    Chrome 46 i nowsze wersje

    Stan wyciszenia karty i przyczyna ostatniej zmiany stanu.

  • openerTabId

    Liczba opcjonalnie

    Identyfikator karty, na której została otwarta (jeśli istnieje). Ta właściwość występuje tylko wtedy, gdy nadal istnieje karta otwierająca.

  • pendingUrl

    ciąg znaków opcjonalny

    Chrome 79 i nowsze

    Adres URL, do którego prowadzi karta, zanim zostanie zatwierdzona. Ta właściwość jest dostępna tylko wtedy, gdy plik manifestu rozszerzenia zawiera uprawnienie "tabs" i oczekuje na nawigację.

  • przypięty

    boolean

    Określa, czy karta jest przypięta.

  • wybrano

    boolean

    Wycofano

    Użyj adresu tabs.Tab.highlighted.

    Określa, czy karta jest wybrana.

  • sessionId

    ciąg znaków opcjonalny

    Identyfikator sesji używany do jednoznacznego identyfikowania karty uzyskanej z interfejsu API sessions.

  • status

    TabStatus opcjonalnie

    Stan wczytywania karty.

  • title

    ciąg znaków opcjonalny

    Tytuł karty. Ta właściwość jest dostępna tylko wtedy, gdy plik manifestu rozszerzenia zawiera uprawnienie "tabs".

  • URL

    ciąg znaków opcjonalny

    Ostatni zatwierdzony adres URL głównej ramki karty. Ta właściwość jest dostępna tylko wtedy, gdy plik manifestu rozszerzenia zawiera uprawnienie "tabs" i może być pustym ciągiem znaków, jeśli karta nie została jeszcze zatwierdzona. Zobacz też Tab.pendingUrl.

  • szerokość

    Liczba opcjonalnie

    Szerokość karty w pikselach.

  • windowId

    Liczba

    Identyfikator okna zawierającego kartę.

TabStatus

Chrome 44 i nowsze wersje

Stan wczytywania karty.

Typ wyliczeniowy

WindowType

Chrome 44 i nowsze wersje

Typ okna.

Typ wyliczeniowy

"panel"

"devtools"

ZoomSettings

Określa sposób obsługi zmian powiększenia na karcie oraz zakres.

Właściwości

  • defaultZoomFactor

    Liczba opcjonalnie

    Chrome 43 i nowsze wersje

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

  • tryb

    Opcjonalnie ZoomSettingsMode

    Określa sposób obsługi zmian powiększenia, tj.który element odpowiada za rzeczywiste skalowanie strony. Wartość domyślna to automatic.

  • zakres

    ZoomSettingsScope opcjonalnie

    Określa, czy zmiany powiększenia są stosowane w źródle strony czy mają efekt tylko na tej karcie. W trybie automatic domyślna wartość to per-origin, a w przeciwnym razie wartość per-tab.

ZoomSettingsMode

Chrome 44 i nowsze wersje

Określa sposób obsługi zmian powiększenia, tj.który element odpowiada za rzeczywiste skalowanie strony. Wartość domyślna to automatic.

Typ wyliczeniowy

"automatic"
Zmiany powiększenia są obsługiwane automatycznie przez przeglądarkę.

"manual"
Zastępuje automatyczną obsługę zmian powiększenia. Zdarzenie onZoomChange będzie nadal wysyłane, a za nasłuchiwanie tego zdarzenia i ręczne skalowanie strony należy rozszerzenie. Ten tryb nie obsługuje powiększania w trybie per-origin, dlatego ignoruje ustawienie powiększenia w scope i przyjmuje wartość per-tab.

"disable"
Wyłącza powiększenie karty. Karta wróci do domyślnego poziomu powiększenia, a wszystkie próby zmiany powiększenia zostaną zignorowane.

ZoomSettingsScope

Chrome 44 i nowsze wersje

Określa, czy zmiany powiększenia są stosowane w źródle strony czy mają efekt tylko na tej karcie. W trybie automatic domyślna wartość to per-origin, a w przeciwnym razie wartość per-tab.

Typ wyliczeniowy

"per-origin"
Zmiany powiększenia pozostają zachowane w przypadku powiększonej strony, tzn. wszystkie pozostałe karty, które przeszły do tego samego źródła, również są powiększone. Co więcej, zmiany powiększenia w per-origin są zapisywane razem ze źródłem, co oznacza, że podczas przechodzenia do innych stron w tym samym źródle są one powiększone do tego samego współczynnika powiększenia. Zakres per-origin jest dostępny tylko w trybie automatic.

"na kartę"
Zmiany powiększenia obowiązują tylko na tej karcie. Zmiany powiększenia na innych kartach nie mają wpływu na jej powiększenie. Poza tym zmiany powiększenia w per-tab są resetowane podczas nawigacji; poruszanie się po karcie zawsze wczytuje strony z per-origin współczynnikami powiększenia.

Właściwości

MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND

Chrome 92 i nowsze wersje

Maksymalna liczba wywołań funkcji captureVisibleTab w ciągu sekundy. Usługa captureVisibleTab jest droga i nie należy jej wywoływać zbyt często.

Wartość

2

TAB_ID_NONE

Chrome 46 i nowsze wersje

Identyfikator wskazujący brak karty przeglądarki.

Wartość

–1

TAB_INDEX_NONE

Chrome 123 i nowsze wersje

Indeks reprezentujący brak indeksu tabulacji na pasku tabulacji.

Wartość

–1

Metody

captureVisibleTab()

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

Przechwytuje obszar widoczny w aktualnie aktywnej karcie w określonym oknie. Aby wywołać tę metodę, rozszerzenie musi mieć uprawnienie <all_urls> lub activeTab. Oprócz witryn, do których rozszerzenia mają normalnie dostęp, ta metoda pozwala rozszerzeniom przechwytywać witryny wrażliwe, które podlegają innym ograniczeniom. Dotyczy to np. stron chrome:-scheme, stron innych rozszerzeń czy adresów URL danych. Te witryny poufne można przechwytywać tylko z uprawnieniami ActiveTab. Adresy URL plików można przechwytywać tylko wtedy, gdy rozszerzenie ma dostęp do plików.

Parametry

  • windowId

    Liczba opcjonalnie

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

  • Opcje

    ImageDetails opcjonalnie

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (dataUrl: string)=>void

    • dataUrl

      string,

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

Zwroty

  • Obietnica<string>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

connect()

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

Łączy się ze skryptami treści na określonej karcie. Zdarzenie runtime.onConnect jest uruchamiane w każdym skrypcie treści uruchomionym na określonej karcie dla bieżącego rozszerzenia. Aby dowiedzieć się więcej, przeczytaj artykuł Przesyłanie wiadomości w języku angielskim.

Parametry

  • tabId

    Liczba

  • connectInfo

    obiekt opcjonalnie

    • documentId

      ciąg znaków opcjonalny

      Chrome 106 i nowsze wersje

      Otwórz port do określonego dokumentu identyfikowanego przez parametr documentId zamiast do wszystkich ramek na karcie.

    • frameId

      Liczba opcjonalnie

      Otwórz port do konkretnej ramki identyfikowanej przez parametr frameId zamiast wszystkich ramek na karcie.

    • nazwa

      ciąg znaków opcjonalny

      Jest przekazywany do onConnect na potrzeby 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 działającymi na określonej karcie. Zdarzenie runtime.Port na porcie jest uruchamiane, gdy karta się zamknie lub nie istnieje.

create()

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

Tworzy nową kartę.

Parametry

  • createProperties

    obiekt

    • aktywny krok

      wartość logiczna opcjonalna

      Określa, czy karta ma stać się kartą aktywną w oknie. Nie ma wpływu na to, czy okno jest zaznaczone (patrz windows.update). Wartość domyślna to true.

    • indeks

      Liczba opcjonalnie

      Położenie karty w oknie. Podana wartość jest ograniczona do zakresu od zera do liczby znaków tabulacji w oknie.

    • openerTabId

      Liczba opcjonalnie

      Identyfikator karty, na której została otwarta. Jeśli określisz kartę otwierającą, musi ona znajdować się 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

      wartość logiczna opcjonalna

      Wycofano

      Użyj wartości aktywne.

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

    • URL

      ciąg znaków opcjonalny

      Adres URL, pod który należy początkowo otworzyć kartę. Pełne adresy URL muszą zawierać schemat (np. „http://www.google.com”, a nie „www.google.com”). Względne adresy URL są podawane względem bieżącej strony w rozszerzeniu. Domyślna strona to strona nowej karty.

    • windowId

      Liczba opcjonalnie

      Okno, w którym ma zostać utworzona nowa karta. Domyślnie jest to bieżące okno.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (tab: Tab)=>void

    • tab

      Karta utworzona.

Zwroty

  • Promise<Tab>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

detectLanguage()

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

Wykrywa główny język treści na karcie.

Parametry

  • tabId

    Liczba opcjonalnie

    Domyślnie jest to aktywna karta bieżącego okna.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (language: string)=>void

    • language,

      string,

      Kod języka w formacie ISO, np. en lub fr. Pełną listę języków obsługiwanych przez tę metodę znajdziesz w sekcji kLanguageInfoTable. Zaznaczone są kolumny od drugiej do czwartej, a zwracana jest pierwsza wartość niezawierająca wartości NULL. Nie dotyczy to języka chińskiego uproszczonego, w przypadku którego zwracana jest wartość zh-CN. W przypadku nieznanego/nieokreślonego języka zwracana jest wartość und.

Zwroty

  • Obietnica<string>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

discard()

Obietnica Chrome w wersji 54 lub nowszej
chrome.tabs.discard(
  tabId?: number,
  callback?: function,
)

Usuwa kartę z pamięci. Odrzucone karty są nadal widoczne na pasku kart i są odświeżane po aktywowaniu.

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty, którą chcesz odrzucić. Jeśli określisz kartę, zostanie ona odrzucona, chyba że jest aktywna lub odrzucona. Jeśli go pominiesz, przeglądarka odrzuci najmniej ważną kartę. Niepowodzenie, jeśli nie ma żadnych kart do odrzucenia.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (tab?: Tab)=>void

    • tab

      Tab opcjonalnie

      Odrzucona karta, jeśli została odrzucona. W przeciwnym razie nie zdefiniowano jej wartości.

Zwroty

  • Obietnica<Tab|undefined>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

duplicate()

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

Powiela kartę.

Parametry

  • tabId

    Liczba

    Identyfikator karty do zduplikowania.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (tab?: Tab)=>void

    • tab

      Tab opcjonalnie

      Szczegółowe informacje o zduplikowanej karcie. Obiekt tabs.Tab nie zawiera obiektów url, pendingUrl, title ani favIconUrl, jeśli nie zażądano uprawnienia "tabs".

Zwroty

  • Obietnica<Tab|undefined>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

executeScript()

Obietnica &leq;MV2 wycofana od Chrome 91
chrome.tabs.executeScript(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)

Zastąpione przez scripting.executeScript w platformie Manifest V3.

Wstawia na stronie kod JavaScript. Szczegółowe informacje znajdziesz w sekcji dotyczącej wstrzykiwania kodu w dokumencie o skryptach treści.

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty, na której uruchom skrypt. Domyślnie jest to aktywna karta bieżącego okna.

  • szczegóły

    Szczegóły skryptu, który ma zostać uruchomiony. Musisz ustawić kod lub właściwość pliku, ale nie można ustawić obu tych elementów jednocześnie.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (result?: any[])=>void

    • wynik

      any[] opcjonalny

      Wynik skryptu w każdej wstrzykniętej ramce.

Zwroty

  • Obietnica<any[]|undefined>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

get()

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

Pobiera informacje o określonej karcie.

Parametry

  • tabId

    Liczba

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (tab: Tab)=>void

Zwroty

  • Promise<Tab>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

getAllInWindow()

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

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

Pobiera szczegółowe informacje o wszystkich kartach w określonym oknie.

Parametry

  • windowId

    Liczba opcjonalnie

    Domyślnie jest to bieżące okno.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (tabs: Tab[])=>void

Zwroty

  • Promise<Tab[]>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

getCurrent()

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

Pobiera kartę, z której jest wykonywane to wywołanie skryptu. Zwraca wartość undefined, jeśli została wywołana z kontekstu innego niż karta (np. ze strony w tle lub widoku wyskakującego).

Parametry

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (tab?: Tab)=>void

    • tab

      Tab opcjonalnie

Zwroty

  • Obietnica<Tab|undefined>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

getSelected()

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

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

Pobiera kartę wybraną w określonym oknie.

Parametry

  • windowId

    Liczba opcjonalnie

    Domyślnie jest to bieżące okno.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (tab: Tab)=>void

Zwroty

  • Promise<Tab>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

getZoom()

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

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

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty, z której pochodzi bieżący współczynnik powiększenia. Domyślnie jest to karta aktywna w bieżącym oknie.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (zoomFactor: number)=>void

    • zoomFactor

      Liczba

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

Zwroty

  • Obietnica<number>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

getZoomSettings()

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

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

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty odpowiadającej bieżącym ustawieniom powiększenia. Domyślnie jest to aktywna karta bieżącego okna.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (zoomSettings: ZoomSettings)=>void

    • zoomSettings

      Bieżące ustawienia powiększenia karty.

Zwroty

  • Promise<ZoomSettings>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

goBack()

Obietnica Chrome w wersji 72 lub nowszej
chrome.tabs.goBack(
  tabId?: number,
  callback?: function,
)

Jeśli jest dostępna, wróć na poprzednią stronę.

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty, do której można przejść wstecz. Domyślnie jest to wybrana karta w bieżącym oknie.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

goForward()

Obietnica Chrome w wersji 72 lub nowszej
chrome.tabs.goForward(
  tabId?: number,
  callback?: function,
)

Jeśli jest dostępna, przejdź do następnej strony.

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty, która służy do przejścia do przodu. Domyślnie jest to wybrana karta w bieżącym oknie.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

group()

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

Dodaje co najmniej 1 kartę do określonej grupy lub, jeśli nie określono żadnej grupy, dodaje karty do nowo utworzonej grupy.

Parametry

  • Opcje

    obiekt

    • createProperties

      obiekt opcjonalnie

      Konfiguracje tworzenia grup. Nie można użyć, jeśli identyfikator grupy został już określony.

      • windowId

        Liczba opcjonalnie

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

    • groupId

      Liczba opcjonalnie

      Identyfikator grupy, do której chcesz dodać karty. Jeśli nie podasz żadnej wartości, zostanie utworzona nowa grupa.

    • tabIds

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

      Identyfikator lub lista identyfikatorów kart, które chcesz dodać do określonej grupy.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (groupId: number)=>void

    • groupId

      Liczba

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

Zwroty

  • Obietnica<number>

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

highlight()

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

Wyróżnia podane karty i wyróżnia pierwszą grupę. Karta nie będzie prawdopodobnie aktywna, jeśli jest aktywna.

Parametry

  • highlightInfo

    obiekt

    • karty

      liczba|liczba[]

      Jeden lub więcej indeksów kart do wyróżnienia.

    • windowId

      Liczba opcjonalnie

      Okno zawierające karty.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (window: Window)=>void

    • okno

      Zawiera szczegółowe informacje o oknie, w którym zostały wyróżnione karty.

Zwroty

  • Obietnica<windows.Window>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

insertCSS()

Obietnica &leq;MV2 wycofana od Chrome 91
chrome.tabs.insertCSS(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)

Zastąpione przez scripting.insertCSS w platformie Manifest V3.

Wstawia na stronie kod CSS. Style wstawione przy użyciu tej metody można usuwać za pomocą przycisku scripting.removeCSS. Szczegółowe informacje znajdziesz w sekcji dotyczącej wstrzykiwania kodu w dokumencie o skryptach treści.

Parametry

  • tabId

    Liczba opcjonalnie

    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 właściwość pliku, ale nie można ustawić obu tych elementów jednocześnie.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

move()

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

Przenosi jedną lub więcej kart w nowe miejsce w oknie lub do nowego okna. Pamiętaj, że karty można przenosić tylko do i z zwykłych (window.type === "normal") okien.

Parametry

  • tabIds

    liczba|liczba[]

    Identyfikator karty lub lista identyfikatorów kart do przeniesienia.

  • moveProperties

    obiekt

    • indeks

      Liczba

      Pozycja, do której ma zostać przeniesione okno. Użyj -1, by umieścić kartę na końcu okna.

    • windowId

      Liczba opcjonalnie

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

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

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

    • karty

      Szczegółowe informacje o przeniesionych kartach.

Zwroty

  • Obietnica<Tab|Tab[]>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

query()

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

Pobiera wszystkie karty z określonymi właściwościami lub wszystkie, jeśli nie określono żadnych właściwości.

Parametry

  • queryInfo

    obiekt

    • aktywny krok

      wartość logiczna opcjonalna

      Określa, czy karty są aktywne w oknach.

    • audible

      wartość logiczna opcjonalna

      Chrome 45 i nowsze wersje

      Czy karty są słyszalne.

    • autoDiscardable

      wartość logiczna opcjonalna

      Chrome w wersji 54 i nowszych

      Określa, czy karty mogą być automatycznie zamykane przez przeglądarkę przy niskim poziomie zasobów.

    • currentWindow

      wartość logiczna opcjonalna

      Określa, czy karty są w bieżącym oknie.

    • odrzucono

      wartość logiczna opcjonalna

      Chrome w wersji 54 i nowszych

      Określa, czy karty zostały odrzucone. Karta odrzucona to taka, której zawartość została wyładowana z pamięci, ale nadal jest widoczna na pasku kart. Jego zawartość zostanie wczytana ponownie przy następnym aktywacji.

    • groupId

      Liczba opcjonalnie

      Chrome 88 i nowsze wersje

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

    • wyróżniona

      wartość logiczna opcjonalna

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

    • indeks

      Liczba opcjonalnie

      Pozycja kart w oknach.

    • lastFocusedWindow

      wartość logiczna opcjonalna

      Określa, czy karty są w ostatnim aktywnym oknie.

    • Wyciszono

      wartość logiczna opcjonalna

      Chrome 45 i nowsze wersje

      Określa, czy karty są wyciszone.

    • przypięty

      wartość logiczna opcjonalna

      Określa, czy karty są przypięte.

    • status

      TabStatus opcjonalnie

      Stan wczytywania karty.

    • title

      ciąg znaków opcjonalny

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

    • URL

      string|string[] optional

      Dopasuj karty do co najmniej jednego wzorca adresu URL. Identyfikatory fragmentów nie są zgodne. Ta właściwość jest ignorowana, jeśli rozszerzenie nie ma uprawnienia "tabs".

    • windowId

      Liczba opcjonalnie

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

    • windowType

      WindowType opcjonalnie

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

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (result: Tab[])=>void

Zwroty

  • Promise<Tab[]>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

reload()

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

Załaduj ponownie kartę.

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty, która ma zostać ponownie wczytana. Domyślnie jest to wybrana karta w bieżącym oknie.

  • reloadProperties

    obiekt opcjonalnie

    • bypassCache

      wartość logiczna opcjonalna

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

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

remove()

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

Zamyka co najmniej 1 kartę.

Parametry

  • tabIds

    liczba|liczba[]

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

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

removeCSS()

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

Zastąpione przez scripting.removeCSS w platformie Manifest V3.

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

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty, z której chcesz usunąć CSS. Domyślnie jest to aktywna karta bieżącego okna.

  • Szczegóły tekstu usługi porównywania cen do usunięcia. Musisz ustawić kod lub właściwość pliku, ale nie można ustawić obu tych elementów jednocześnie.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

sendMessage()

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

Wysyła pojedynczą wiadomość do skryptów treści na określonej karcie z opcjonalnym wywołaniem zwrotnym, które zostanie wykonane po wysłaniu odpowiedzi. Zdarzenie runtime.onMessage jest uruchamiane w każdym skrypcie treści uruchomionym na określonej karcie dla bieżącego rozszerzenia.

Parametry

  • tabId

    Liczba

  • wiadomość

    Dowolne

    Wiadomość do wysłania. Ta wiadomość powinna być obiektem obsługującym format JSON.

  • Opcje

    obiekt opcjonalnie

    • documentId

      ciąg znaków opcjonalny

      Chrome 106 i nowsze wersje

      Wyślij wiadomość do określonego dokumentu oznaczonego przez documentId zamiast do wszystkich ramek na karcie.

    • frameId

      Liczba opcjonalnie

      Wyślij wiadomość do konkretnej ramki identyfikowanej przez parametr frameId zamiast do wszystkich ramek karty.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Chrome 99 i nowsze

    Parametr callback wygląda tak:

    (response: any)=>void

    • odpowiedź

      Dowolne

      Obiekt odpowiedzi JSON wysłany przez moduł obsługi wiadomości. Jeśli podczas nawiązywania połączenia z określoną kartą wystąpi błąd, wywołanie zwrotne jest wywoływane bez argumentów, a dla funkcji runtime.lastError jest ustawiany komunikat o błędzie.

Zwroty

  • Obietnica<jakikolwiek>

    Chrome 99 i nowsze

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

sendRequest()

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

Użyj adresu runtime.sendMessage.

Wysyła jedno żądanie do skryptów treści na określonej karcie z opcjonalnym wywołaniem zwrotnym, które jest wykonywane po zwróceniu odpowiedzi. Zdarzenie extension.onRequest jest uruchamiane w każdym skrypcie treści uruchomionym na określonej karcie dla bieżącego rozszerzenia.

Parametry

  • tabId

    Liczba

  • Poproś

    Dowolne

  • wywołanie zwrotne

    funkcja opcjonalnie

    Chrome 99 i nowsze

    Parametr callback wygląda tak:

    (response: any)=>void

    • odpowiedź

      Dowolne

      Obiekt odpowiedzi JSON wysłany przez moduł obsługi żądania. Jeśli podczas nawiązywania połączenia z określoną kartą wystąpi błąd, wywołanie zwrotne jest wywoływane bez argumentów, a dla funkcji runtime.lastError jest ustawiany komunikat o błędzie.

Zwroty

  • Obietnica<jakikolwiek>

    Chrome 99 i nowsze

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

setZoom()

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

Powiększa określoną kartę.

Parametry

  • tabId

    Liczba opcjonalnie

    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 bieżący domyślny współczynnik powiększenia. Wartości większe niż 0 określają (prawdopodobnie inny niż domyślny) współczynnik powiększenia dla karty.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

setZoomSettings()

Obietnica
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 podczas poruszania się po karcie.

Parametry

  • tabId

    Liczba opcjonalnie

    Identyfikator karty, na której chcesz zmienić ustawienia powiększenia. Domyślnie jest to aktywna karta bieżącego okna.

  • zoomSettings

    Określa sposób i zakres obsługi zmian powiększenia.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

ungroup()

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

Usuwa co najmniej 1 kartę z odpowiedniej grupy. Jeśli jakieś grupy staną się puste, zostaną usunięte.

Parametry

  • tabIds

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

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

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Zwroty

  • Promise<void>

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

update()

Obietnica
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 polu updateProperties, nie są modyfikowane.

Parametry

  • tabId

    Liczba opcjonalnie

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

  • updateProperties

    obiekt

    • aktywny krok

      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 w wersji 54 i nowszych

      Określa, czy karta ma być automatycznie odrzucana przy niskim poziomie zasobów.

    • wyróżniona

      wartość logiczna opcjonalna

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

    • Wyciszono

      wartość logiczna opcjonalna

      Chrome 45 i nowsze wersje

      Określa, czy karta ma być wyciszona.

    • openerTabId

      Liczba opcjonalnie

      Identyfikator karty, na której została otwarta. Jeśli została 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

      wartość logiczna opcjonalna

      Wycofano

      Użyj opcji highlighted (podświetlone).

      Określa, czy karta ma zostać wybrana.

    • URL

      ciąg znaków opcjonalny

      Adres URL, do którego należy przejść na kartę. Adresy URL JavaScript nie są obsługiwane. Zamiast nich użyj parametru scripting.executeScript.

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (tab?: Tab)=>void

    • tab

      Tab opcjonalnie

      Szczegółowe informacje o zaktualizowanej karcie. Obiekt tabs.Tab nie zawiera obiektów url, pendingUrl, title ani favIconUrl, jeśli nie zażądano uprawnienia "tabs".

Zwroty

  • Obietnica<Tab|undefined>

    Chrome 88 i nowsze wersje

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

Wydarzenia

onActivated

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

Uruchamiany po zmianie aktywnej karty w oknie. Pamiętaj, że URL karty może nie być ustawiony w chwili uruchomienia tego zdarzenia, ale możesz nasłuchiwać zdarzeń onUpdated, aby otrzymywać powiadomienia o ustawieniu adresu URL.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (activeInfo: object)=>void

    • activeInfo

      obiekt

      • tabId

        Liczba

        Identyfikator aktywnej karty.

      • windowId

        Liczba

        Identyfikator okna, w którym została zmieniona aktywna karta.

onActiveChanged

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

Użyj adresu tabs.onActivated.

Uruchamiany po zmianie karty w oknie. Pamiętaj, że URL karty może nie być ustawiony w chwili uruchomienia tego zdarzenia, ale możesz nasłuchiwać zdarzeń tabs.onUpdated, aby otrzymać powiadomienie, gdy URL zostanie ustawiony.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • tabId

      Liczba

    • selectInfo

      obiekt

      • windowId

        Liczba

        Identyfikator okna, w którym zmieniła się wybrana karta.

onAttached

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

Uruchamiane, gdy karta jest dołączona do okna, na przykład po przeniesieniu jej między oknami.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • tabId

      Liczba

    • attachInfo

      obiekt

      • newPosition

        Liczba

      • newWindowId

        Liczba

onCreated

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

Uruchamiane po utworzeniu karty. Pamiętaj, że URL karty i członkostwo w grupie kart mogą nie być ustawione w momencie wywoływania tego zdarzenia, ale możesz nasłuchiwać zdarzeń onUpdated, aby otrzymać powiadomienie o ustawieniu adresu URL lub dodaniu karty do grupy kart.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (tab: Tab)=>void

onDetached

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

Uruchamiane, gdy karta została odłączona od okna, na przykład po przeniesieniu między oknami.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • tabId

      Liczba

    • detachInfo

      obiekt

      • oldPosition

        Liczba

      • oldWindowId

        Liczba

onHighlightChanged

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

Użyj adresu tabs.onHighlighted.

Uruchamiane po zmianie wyróżnionych lub wybranych kart w oknie.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (selectInfo: object)=>void

    • selectInfo

      obiekt

      • tabIds

        liczba[]

        Wszystkie wyróżnione karty w oknie.

      • windowId

        Liczba

        Okno, którego karty się zmieniły.

onHighlighted

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

Uruchamiane po zmianie wyróżnionych lub wybranych kart w oknie.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (highlightInfo: object)=>void

    • highlightInfo

      obiekt

      • tabIds

        liczba[]

        Wszystkie wyróżnione karty w oknie.

      • windowId

        Liczba

        Okno, którego karty się zmieniły.

onMoved

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

Uruchamiane, gdy karta zostanie przeniesiona w oknie. Uruchamiane jest tylko jedno zdarzenie przeniesienia reprezentujące 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 przeniesioną ręcznie kartę. To zdarzenie nie jest wywoływane po przeniesieniu karty między oknami. Szczegółowe informacje znajdziesz w sekcji tabs.onDetached.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • tabId

      Liczba

    • moveInfo

      obiekt

      • fromIndex

        Liczba

      • toIndex

        Liczba

      • windowId

        Liczba

onRemoved

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

Uruchamiane, gdy karta jest zamknięta.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • tabId

      Liczba

    • removeInfo

      obiekt

      • isWindowClosing

        boolean

        Prawda, gdy karta została zamknięta z powodu zamknięcia jej okna nadrzędnego.

      • windowId

        Liczba

        Okno, którego karta jest zamknięta.

onReplaced

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

Uruchamiane, gdy karta zostaje zastąpiona inną kartą w związku z renderowaniem wstępnym lub błyskawicznym.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • addedTabId

      Liczba

    • removedTabId

      Liczba

onSelectionChanged

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

Użyj adresu tabs.onActivated.

Uruchamiany po zmianie karty w oknie.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • tabId

      Liczba

    • selectInfo

      obiekt

      • windowId

        Liczba

        Identyfikator okna, w którym zmieniła się wybrana karta.

onUpdated

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

Uruchamiane po zaktualizowaniu karty.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

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

    • tabId

      Liczba

    • changeInfo

      obiekt

      • audible

        wartość logiczna opcjonalna

        Chrome 45 i nowsze wersje

        Nowy stan karty z dźwiękiem.

      • autoDiscardable

        wartość logiczna opcjonalna

        Chrome w wersji 54 i nowszych

        Nowy stan karty do automatycznego wyłączenia.

      • odrzucono

        wartość logiczna opcjonalna

        Chrome w wersji 54 i nowszych

        Nowy stan karty po odrzuceniu.

      • favIconUrl

        ciąg znaków opcjonalny

        Adres URL nowej favikony karty.

      • groupId

        Liczba opcjonalnie

        Chrome 88 i nowsze wersje

        Nowa grupa dla karty.

      • mutedInfo

        Opcjonalny MutedInfo

        Chrome 46 i nowsze wersje

        Nowy stan wyciszenia karty i przyczyna zmiany.

      • przypięty

        wartość logiczna opcjonalna

        Nowy stan przypięcia karty.

      • status

        TabStatus opcjonalnie

        Stan wczytywania karty.

      • title

        ciąg znaków opcjonalny

        Chrome 48 i nowsze wersje

        Nowy tytuł karty.

      • URL

        ciąg znaków opcjonalny

        adres URL karty, jeśli uległ zmianie;

    • tab

onZoomChange

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

Uruchamiane, gdy karta jest powiększona.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (ZoomChangeInfo: object)=>void

    • ZoomChangeInfo

      obiekt

      • newZoomFactor

        Liczba

      • oldZoomFactor

        Liczba

      • tabId

        Liczba

      • zoomSettings