chrome.tabs

refresh date: 2026-09-25 robots: noindex

Opis

Użyj interfejsu API chrome.tabs, aby wejść w interakcję z systemem kart przeglądarki. Za pomocą tego interfejsu API możesz tworzyć, modyfikować i porządkować karty w przeglądarce.

Przegląd

Interfejs Tabs API nie tylko oferuje funkcje do manipulowania kartami i zarządzania nimi, ale może też wykrywać język karty, robić zrzuty ekranu i komunikować się ze skryptami zawartości karty.

Uprawnienia

Większość funkcji nie wymaga żadnych uprawnień. Na przykład: utworzenie nowej karty, ponowne załadowanie karty, przejście do innego adresu URL itp.

Podczas pracy z interfejsem Tabs API deweloperzy powinni pamiętać o 3 uprawnieniach.

Uprawnienie „tabs”
To uprawnienie nie daje dostępu do przestrzeni nazw chrome.tabs. Zamiast tego przyznaje rozszerzeniu możliwość wywoływania tabs.query() w przypadku 4 poufnych właściwości w instancjach tabs.Tab: url, pendingUrl, title i favIconUrl.
Uprawnienia gospodarza
Uprawnienia hosta umożliwiają rozszerzeniu odczytywanie i wykonywanie zapytań dotyczących 4 poufnych właściwości pasującej karty:tabs.Tab Mogą też bezpośrednio wchodzić w interakcje z pasującymi kartami, używając metod takich jak tabs.captureVisibleTab(), tabs.executeScript(), tabs.insertCSS() i tabs.removeCSS().
Uprawnienie „activeTab”
activeTab przyznaje rozszerzeniu tymczasowe uprawnienia dotyczące hosta dla bieżącej karty w odpowiedzi na wywołanie przez użytkownika. W przeciwieństwie do uprawnień hosta activeTab nie powoduje wyświetlania żadnych ostrzeżeń.

Plik manifestu

Poniżej znajdziesz 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 sekcjach poniżej znajdziesz kilka typowych przypadków użycia.

Otwieranie strony rozszerzenia w nowej karcie

Typowym wzorcem w przypadku rozszerzeń jest otwieranie strony wprowadzającej na nowej karcie po zainstalowaniu rozszerzenia. Poniższy przykład pokazuje, 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 skrypt service worker rozszerzenia może pobrać aktywną kartę z okna, które jest obecnie aktywne (lub z ostatnio aktywnego okna, jeśli żadne okno Chrome nie jest aktywne). Zwykle 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 przełączać stan wyciszenia 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" }`);
    });
  }

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

Ten przykład pokazuje, jak przenieść kartę, gdy przeciąganie może być w toku. Chociaż w tym przykładzie użyto chrome.tabs.move, 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 skrypt service worker rozszerzenia może komunikować się ze 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ń

Więcej wersji demonstracyjnych rozszerzeń interfejsu Tabs API znajdziesz tutaj:

Typy

MutedInfo

Chrome 46 lub nowsza wersja

Stan wyciszenia karty i powód ostatniej zmiany stanu.

Właściwości

  • extensionId

    ciąg znaków opcjonalny

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

  • Wyciszono

    wartość logiczna

    Czy karta jest wyciszona (nie może odtwarzać dźwięku). Karta może być wyciszona, nawet jeśli nie odtwarzała lub nie odtwarza obecnie dźwięku. Odpowiada wyświetlaniu wskaźnika wyciszenia dźwięku.

  • reason

    MutedInfoReason opcjonalny

    Powód wyciszenia lub wyłączenia wyciszenia karty. Nie jest ustawiana, jeśli stan wyciszenia karty nigdy nie został zmieniony.

MutedInfoReason

Chrome 46 lub nowsza wersja

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

Typ wyliczeniowy

"user"
Stan wyciszenia został ustawiony przez działanie użytkownika.

"capture"
Rozpoczęto przechwytywanie karty, co wymusiło zmianę stanu wyciszenia.

"extension"
Rozszerzenie określone w polu extensionId ustawiło stan wyciszenia.

Tab

Właściwości

  • aktywna

    wartość logiczna

    Czy karta jest aktywna w oknie. Nie musi to oznaczać, że okno jest zaznaczone.

  • audible

    boolean opcjonalne

    Chrome 45 lub nowsza wersja

    Czy karta odtwarzała dźwięk w ciągu ostatnich kilku sekund (ale może nie być słyszalny, jeśli jest wyciszony). Odpowiada temu, czy wyświetlany jest wskaźnik „dźwięk głośnika”.

  • autoDiscardable

    wartość logiczna

    Chrome 54 lub nowsza wersja

    Określa, czy przeglądarka może automatycznie odrzucić kartę, gdy zasoby są na wyczerpaniu.

  • odrzucono

    wartość logiczna

    Chrome 54 lub nowsza wersja

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

  • favIconUrl

    ciąg znaków opcjonalny

    Adres URL favikony karty. Ta właściwość jest obecna tylko wtedy, gdy rozszerzenie ma uprawnienie "tabs" lub uprawnienia hosta do strony. Może też być pustym ciągiem znaków, jeśli karta jest w trakcie wczytywania.

  • zawieszony

    wartość logiczna

    Chrome 132 lub nowsza wersja

    Czy karta jest zamrożona. Wstrzymana karta nie może wykonywać zadań, w tym modułów obsługi zdarzeń ani liczników czasu. Jest widoczna na pasku kart, a jej zawartość jest wczytywana do pamięci. Zostanie odmrożone po aktywacji.

  • groupId

    liczba

    Chrome 88 lub nowsza wersja

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

  • wysokość

    number optional

    Wysokość karty w pikselach.

  • wyróżniona

    wartość logiczna

    Czy karta jest wyróżniona.

  • id

    number optional

    Identyfikator karty. Identyfikatory kart są unikalne w ramach sesji przeglądarki. W niektórych przypadkach karta może nie mieć przypisanego identyfikatora, np. podczas wysyłania zapytania do kart zewnętrznych za pomocą interfejsu API sessions. W takim przypadku może być obecny identyfikator sesji. Identyfikator karty można też ustawić na chrome.tabs.TAB_ID_NONE w przypadku aplikacji i okien narzędzi dla programistów.

  • incognito

    wartość logiczna

    Określa, czy karta znajduje się w oknie incognito.

  • indeks

    liczba

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

  • lastAccessed

    liczba

    Chrome 121 lub nowsza wersja

    Ostatni raz, gdy karta stała się aktywna w oknie, jako liczba milisekund od początku epoki.

  • mutedInfo

    MutedInfo opcjonalny

    Chrome 46 lub nowsza wersja

    Stan wyciszenia karty i powód ostatniej zmiany stanu.

  • openerTabId

    number optional

    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

    ciąg znaków opcjonalny

    Chrome 79 lub nowsza wersja

    Adres URL, do którego przechodzi karta, zanim zostanie zatwierdzony. Ta właściwość jest obecna tylko wtedy, gdy rozszerzenie ma uprawnienie "tabs" lub uprawnienia hosta do strony i oczekuje na nawigację.

  • przypięty

    wartość logiczna

    Czy karta jest przypięta.

  • wybrano

    wartość logiczna

    Wycofane

    Użyj tabs.Tab.highlighted.

    Czy karta jest wybrana.

  • sessionId

    ciąg znaków opcjonalny

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

  • splitViewId

    number optional

    Chrome 140 lub nowsza wersja

    Identyfikator widoku dzielonego, do którego należy karta.

  • status

    TabStatus opcjonalny

    Stan wczytywania karty.

  • tytuł

    ciąg znaków opcjonalny

    Tytuł karty. Ta właściwość jest obecna tylko wtedy, gdy rozszerzenie ma uprawnienie "tabs" lub uprawnienia hosta do strony.

  • URL

    ciąg znaków opcjonalny

    Ostatni zatwierdzony adres URL ramki głównej karty. Ta właściwość jest obecna tylko wtedy, gdy rozszerzenie ma uprawnienie "tabs" lub uprawnienia hosta do strony. Może to być pusty ciąg znaków, jeśli karta nie została jeszcze zatwierdzona. Zobacz też Tab.pendingUrl.

  • szerokość

    number optional

    Szerokość karty w pikselach.

  • windowId

    liczba

    Identyfikator okna zawierającego kartę.

TabStatus

Chrome 44 lub nowsza wersja

Stan wczytywania karty.

Typ wyliczeniowy

"unloaded"

"loading"

"complete"

WindowType

Chrome 44 lub nowsza wersja

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 optional

    Chrome 43 lub nowsza wersja

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

  • tryb

    ZoomSettingsMode opcjonalne

    Określa, jak są obsługiwane zmiany powiększenia, czyli który element odpowiada za rzeczywiste skalowanie strony. Wartość domyślna to automatic.

  • zakres

    ZoomSettingsScope opcjonalny

    Określa, czy zmiany powiększenia są zachowywane dla źródła strony, czy obowiązują tylko na tej karcie. Domyślnie jest to per-origin w trybie automatic, a w przeciwnym razie per-tab.

ZoomSettingsMode

Chrome 44 lub nowsza wersja

Określa, jak są obsługiwane zmiany powiększenia, czyli 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 rozszerzenie będzie musiało nasłuchiwać tego zdarzenia i ręcznie skalować stronę. Ten tryb nie obsługuje powiększenia per-origin, więc ignoruje ustawienie powiększenia scope i przyjmuje wartość per-tab.

"disabled"
Wyłącza powiększanie na karcie. Karta powróci do domyślnego poziomu powiększenia, a wszystkie próby zmiany powiększenia zostaną zignorowane.

ZoomSettingsScope

Chrome 44 lub nowsza wersja

Określa, czy zmiany powiększenia są zachowywane dla źródła strony, czy obowiązują tylko na tej karcie. Domyślnie jest to per-origin w trybie automatic, a w przeciwnym razie per-tab.

Typ wyliczeniowy

"per-origin"
Zmiany powiększenia są zachowywane w źródle powiększonej strony, tzn. wszystkie inne karty, które prowadzą do tego samego źródła, również są powiększone. Co więcej, zmiany powiększenia w per-origin są zapisywane w źródle, co oznacza, że podczas przechodzenia na inne strony w tym samym źródle wszystkie są powiększane do tego samego współczynnika powiększenia. Zakres per-origin jest dostępny tylko w trybie automatic.

„per-tab”
Zmiany powiększenia są wprowadzane tylko na tej karcie, a zmiany powiększenia na innych kartach nie mają wpływu na powiększenie na tej karcie. Ponadto zmiany powiększenia w per-tab są resetowane podczas nawigacji. Nawigacja po karcie zawsze powoduje wczytywanie stron z ich współczynnikami powiększenia w per-origin.

Właściwości

MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND

Chrome 92 lub nowsza wersja

Maksymalna liczba wywołań metody captureVisibleTab na sekundę. captureVisibleTab jest kosztowna i nie należy jej wywoływać zbyt często.

Wartość

2

SPLIT_VIEW_ID_NONE

Chrome 140 lub nowsza wersja

Identyfikator, który reprezentuje brak podzielonej karty.

Wartość

-1

TAB_ID_NONE

Chrome 46 lub nowsza wersja

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

Wartość

-1

TAB_INDEX_NONE

Chrome 123 lub nowsza wersja

Indeks reprezentujący brak indeksu karty w tab_strip.

Wartość

-1

Metody

captureVisibleTab()

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

Przechwytuje widoczny obszar aktywnej karty 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ą zwykle dostęp, ta metoda umożliwia rozszerzeniom przechwytywanie witryn poufnych, które w innych przypadkach są ograniczone, w tym stron ze schematem chrome:, stron innych rozszerzeń i adresów URL data:. Te poufne witryny można przechwytywać tylko za pomocą uprawnienia activeTab. Adresy URL plików mogą być przechwytywane tylko wtedy, gdy rozszerzenie ma uprawnienia dostępu do plików.

Parametry

  • windowId

    number optional

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

  • Opcje

    ImageDetails opcjonalny

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (dataUrl: string) => void

    • dataUrl

      tekst

      Adres URL danych, który koduje obraz widocznego obszaru przechwyconej karty. Można go przypisać do właściwości „src” elementu HTML img, aby go wyświetlić.

Zwroty

  • Promise<string>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

connect()

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

Nawiązuje połączenie 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 dla bieżącego rozszerzenia. Więcej informacji znajdziesz w sekcji Content Script Messaging (Komunikaty skryptu treści).

Parametry

  • tabId

    liczba

  • connectInfo

    object opcjonalny

    • documentId

      ciąg znaków opcjonalny

      Chrome 106 lub nowsza wersja

      Otwórz port do konkretnego dokumentu identyfikowanego przez documentId, a nie do wszystkich ramek na karcie.

    • frameId

      number optional

      Otwórz port do określonej ramki identyfikowanej przez frameId zamiast wszystkich ramek na karcie.

    • nazwa

      ciąg znaków opcjonalny

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

Zwroty

  • Port, którego można używać do komunikacji ze skryptami treści działającymi na określonej karcie. Jeśli karta zostanie zamknięta lub nie istnieje, zostanie wywołane zdarzenie runtime.Port portu.

create()

Obietnica
chrome.tabs.create(
  createProperties: object,
  callback?: function,
)
: Promise<Tab>

Tworzy nową kartę.

Parametry

  • createProperties

    obiekt

    • aktywna

      boolean opcjonalne

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

    • indeks

      number optional

      Pozycja, jaką karta powinna zająć w oknie. Podana wartość jest ograniczona do zakresu od zera do liczby kart w oknie.

    • openerTabId

      number optional

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

    • przypięty

      boolean opcjonalne

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

    • wybrano

      boolean opcjonalne

      Wycofane

      Użyj wartości active.

      Określa, czy karta powinna stać się wybraną kartą w oknie. Domyślna wartość to true

    • splitWithTabId

      number optional

      Chrome 155 lub nowsza wersja

      Identyfikator istniejącej karty, z którą chcesz utworzyć widok dzielony. Jeśli określono kartę, z którą ma zostać podzielony ekran, musi ona spełniać te warunki:

      • Nie może to być karta, która została już podzielona.
      • Musi znajdować się w tym samym oknie co nowo utworzona karta.
      • Jeśli podano parametr windowId, musi on być taki sam jak identyfikator okna karty, z którą ma być podzielony ekran.
      • Jeśli określono parametr index, musi to być indeks przylegający do karty, z którą ma zostać podzielony ekran, i będzie on wpływać na względne położenie nowo utworzonej karty.
    • URL

      ciąg znaków opcjonalny

      URL, do którego ma początkowo przejść karta. Pełne i jednoznaczne adresy URL muszą zawierać schemat (np. „http://www.google.com”, a nie „www.google.com”). Względne adresy URL są względne w stosunku do bieżącej strony w rozszerzeniu. Domyślnie jest to strona nowej karty.

    • windowId

      number optional

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (tab: Tab) => void

Zwroty

  • Promise<Tab>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

createSplit()

Promise Chrome 155+
chrome.tabs.createSplit(
  tabIds: [number, number],
  callback?: function,
)
: Promise<number>

Dzieli 2 istniejące karty na widok dzielony.

Parametry

  • tabIds

    [liczba, liczba]

    Tablica zawierająca dokładnie 2 identyfikatory kart, które mają zostać sparowane w widoku dzielonym. Wszystkie karty muszą spełniać te warunki:

    Muszą być obok siebie. Nie mogą być już w widoku dzielonym. Muszą mieć pasujące stany windowId, pinned i groupId.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (splitViewId: number) => void

    • splitViewId

      liczba

      Identyfikator nowo utworzonego widoku dzielonego zawierającego określone karty.

Zwroty

  • Promise<number>

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

detectLanguage()

Obietnica
chrome.tabs.detectLanguage(
  tabId?: number,
  callback?: function,
)
: Promise<string>

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

Parametry

  • tabId

    number optional

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (language: string) => void

    • language

      tekst

      Kod języka ISO, np. en lub fr. Pełną listę języków obsługiwanych przez tę metodę znajdziesz w kLanguageInfoTable. Sprawdzane są kolumny od drugiej do czwartej i zwracana jest pierwsza wartość inna niż NULL, z wyjątkiem uproszczonego chińskiego, dla którego zwracana jest wartość zh-CN. W przypadku nieznanego lub niezdefiniowanego języka zwracany jest kod und.

Zwroty

  • Promise<string>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

discard()

Promise Chrome 54+
chrome.tabs.discard(
  tabId?: number,
  callback?: function,
)
: Promise<Tab | undefined>

Usuwa kartę z pamięci. Odrzucone karty są nadal widoczne na pasku kart i są ponownie ładowane po aktywacji.

Parametry

  • tabId

    number optional

    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 zostanie pominięty, przeglądarka odrzuci najmniej ważną kartę. Może się to nie udać, jeśli nie ma kart, które można odrzucić.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (tab?: Tab) => void

    • karta

      Tab opcjonalny

      Odrzucona karta, jeśli została odrzucona, lub wartość undefined w przeciwnym razie.

Zwroty

  • Promise<Tab | undefined>

    Chrome 88 lub nowsza wersja

    Rozwiązuje problem po zakończeniu operacji.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

duplicate()

Obietnica
chrome.tabs.duplicate(
  tabId: number,
  callback?: function,
)
: Promise<Tab | undefined>

Duplikuje kartę.

Parametry

  • tabId

    liczba

    Identyfikator karty, którą chcesz zduplikować.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (tab?: Tab) => void

    • karta

      Tab opcjonalny

      Szczegółowe informacje o zduplikowanej karcie. Właściwości url, pendingUrl, title i favIconUrl są uwzględniane w obiekcie tabs.Tab tylko wtedy, gdy rozszerzenie ma uprawnienie "tabs" lub uprawnienia hosta do strony.

Zwroty

  • Promise<Tab | undefined>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

executeScript()

Promise &leq; MV2 Wycofane od Chrome 91
chrome.tabs.executeScript(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)
: Promise<any[] | undefined>

W platformie Manifest V3 zastąpione przez scripting.executeScript.

Wstawia kod JavaScript na stronie. Szczegółowe informacje znajdziesz w sekcji programmatic injection (wstrzykiwanie automatyczne) w dokumentacji skryptów treści.

Parametry

  • tabId

    number optional

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

  • szczegóły

    Szczegóły skryptu do uruchomienia. Należy ustawić właściwość kodu lub pliku, ale nie można ustawić obu jednocześnie.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (result?: any[]) => void

    • wynik

      any[] opcjonalny

      Wynik skryptu w każdej wstrzykniętej ramce.

Zwroty

  • Promise<any[] | undefined>

    Chrome 88 lub nowsza wersja

    Rozwiązuje problem po wykonaniu całego kodu JavaScript.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

get()

Obietnica
chrome.tabs.get(
  tabId: number,
  callback?: function,
)
: Promise<Tab>

Pobiera szczegółowe informacje o określonej karcie.

Parametry

  • tabId

    liczba

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (tab: Tab) => void

Zwroty

  • Promise<Tab>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

getAllInWindow()

Promise &leq; MV2 Wycofane
chrome.tabs.getAllInWindow(
  windowId?: number,
  callback?: function,
)
: Promise<Tab[]>

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

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

Parametry

  • windowId

    number optional

    Domyślnie jest to bieżące okno.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (tabs: Tab[]) => void

    • tabulatory

      Tab[]

Zwroty

  • Promise<Tab[]>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

getCurrent()

Obietnica
chrome.tabs.getCurrent(
  callback?: function,
)
: Promise<Tab | undefined>

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

Parametry

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (tab?: Tab) => void

    • karta

      Tab opcjonalny

Zwroty

  • Promise<Tab | undefined>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

getSelected()

Promise &leq; MV2 Wycofane
chrome.tabs.getSelected(
  windowId?: number,
  callback?: function,
)
: Promise<Tab>

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

Pobiera kartę wybraną w określonym oknie.

Parametry

  • windowId

    number optional

    Domyślnie jest to bieżące okno.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (tab: Tab) => void

Zwroty

  • Promise<Tab>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

getZoom()

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

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

Parametry

  • tabId

    number optional

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (zoomFactor: number) => void

    • zoomFactor

      liczba

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

Zwroty

  • Promise<number>

    Chrome 88 lub nowsza wersja

    Zwraca bieżący współczynnik powiększenia karty po jego pobraniu.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

getZoomSettings()

Obietnica
chrome.tabs.getZoomSettings(
  tabId?: number,
  callback?: function,
)
: Promise<ZoomSettings>

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

Parametry

  • tabId

    number optional

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (zoomSettings: ZoomSettings) => void

    • zoomSettings

      Bieżące ustawienia powiększenia karty.

Zwroty

  • Promise<ZoomSettings>

    Chrome 88 lub nowsza wersja

    Zwraca bieżące ustawienia powiększenia karty.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

goBack()

Promise Chrome 72 lub nowsza wersja
chrome.tabs.goBack(
  tabId?: number,
  callback?: function,
)
: Promise<void>

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

Parametry

  • tabId

    number optional

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

goForward()

Promise Chrome 72 lub nowsza wersja
chrome.tabs.goForward(
  tabId?: number,
  callback?: function,
)
: Promise<void>

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

Parametry

  • tabId

    number optional

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

group()

Promise Chrome 88 lub nowsza wersja
chrome.tabs.group(
  options: object,
  callback?: function,
)
: Promise<number>

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

Parametry

  • Opcje

    obiekt

    • createProperties

      object opcjonalny

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

      • windowId

        number optional

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

    • groupId

      number optional

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

    • tabIds

      number | [number, ...number[]]

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (groupId: number) => void

    • groupId

      liczba

      Identyfikator grupy, do której dodano karty.

Zwroty

  • Promise<number>

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

highlight()

Obietnica
chrome.tabs.highlight(
  highlightInfo: object,
  callback?: function,
)
: Promise<windows.Window>

Zaznacza podane karty i skupia się na pierwszej z grupy. Jeśli określona karta jest obecnie aktywna, nie będzie żadnego efektu.

Parametry

  • highlightInfo

    obiekt

    • tabulatory

      number | number[]

      Co najmniej 1 indeks karty do wyróżnienia.

    • windowId

      number optional

      Okno zawierające karty.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (window: Window) => void

    • okno

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

Zwroty

  • Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

insertCSS()

Promise &leq; MV2 Wycofane od Chrome 91
chrome.tabs.insertCSS(
  tabId?: number,
  details: InjectDetails,
  callback?: function,
)
: Promise<void>

W platformie Manifest V3 zastąpione przez scripting.insertCSS.

Wstrzykiwanie kodu CSS na stronie. Style wstawione za pomocą tej metody można usunąć za pomocą funkcji scripting.removeCSS. Szczegółowe informacje znajdziesz w sekcji programmatic injection (wstrzykiwanie automatyczne) w dokumentacji skryptów treści.

Parametry

  • tabId

    number optional

    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. Należy ustawić właściwość kodu lub pliku, ale nie można ustawić obu jednocześnie.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Chrome 88 lub nowsza wersja

    Rozwiązuje problem, gdy cały kod CSS zostanie wstawiony.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

move()

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

Przenosi co najmniej 1 kartę na nową pozycję w oknie lub do nowego okna. Pamiętaj, że karty można przenosić tylko do i ze zwykłych okien (window.type === "normal").

Parametry

  • tabIds

    number | number[]

    Identyfikator karty lub lista identyfikatorów kart do przeniesienia.

  • moveProperties

    obiekt

    • indeks

      liczba

      Pozycja, do której chcesz przenieść okno. Użyj -1, aby umieścić kartę na końcu okna.

    • windowId

      number optional

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

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

    • tabulatory

      Tab | Tab[]

      Szczegóły przeniesionych kart.

Zwroty

  • Promise<Tab | Tab[]>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

query()

Obietnica
chrome.tabs.query(
  queryInfo: object,
  callback?: function,
)
: Promise<Tab[]>

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

      boolean opcjonalne

      czy karty są aktywne w oknach;

    • audible

      boolean opcjonalne

      Chrome 45 lub nowsza wersja

      Czy karty są słyszalne.

    • autoDiscardable

      boolean opcjonalne

      Chrome 54 lub nowsza wersja

      Określa, czy przeglądarka może automatycznie odrzucać karty, gdy brakuje zasobów.

    • currentWindow

      boolean opcjonalne

      czy karty znajdują się w bieżącym oknie,

    • odrzucono

      boolean opcjonalne

      Chrome 54 lub nowsza wersja

      Czy karty są odrzucane. Odrzucona karta to taka, której zawartość została usunięta z pamięci, ale nadal jest widoczna na pasku kart. Jego zawartość zostanie ponownie wczytana przy następnej aktywacji.

    • zawieszony

      boolean opcjonalne

      Chrome 132 lub nowsza wersja

      Czy karty są zamrożone. Wstrzymana karta nie może wykonywać zadań, w tym modułów obsługi zdarzeń ani liczników czasu. Jest widoczna na pasku kart, a jej zawartość jest wczytywana do pamięci. Zostanie odmrożone po aktywacji.

    • groupId

      number optional

      Chrome 88 lub nowsza wersja

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

    • wyróżniona

      boolean opcjonalne

      informacje o tym, czy karty są wyróżnione;

    • indeks

      number optional

      położenie kart w oknach;

    • lastFocusedWindow

      boolean opcjonalne

      Czy karty znajdują się w ostatnim aktywnym oknie.

    • Wyciszono

      boolean opcjonalne

      Chrome 45 lub nowsza wersja

      Czy karty są wyciszone.

    • przypięty

      boolean opcjonalne

      Czy karty są przypięte.

    • splitViewId

      number optional

      Chrome 140 lub nowsza wersja

      Identyfikator widoku dzielonego, w którym znajdują się karty, lub tabs.SPLIT_VIEW_ID_NONE w przypadku kart, które nie są w widoku dzielonym.

    • status

      TabStatus opcjonalny

      Stan wczytywania karty.

    • tytuł

      ciąg znaków opcjonalny

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

    • URL

      string | string[] opcjonalnie

      Dopasuj karty do co najmniej 1 wzorca adresu URL. Identyfikatory fragmentów nie są dopasowywane. Ta właściwość jest ignorowana, jeśli rozszerzenie nie ma uprawnień "tabs" ani uprawnień hosta do strony.

    • windowId

      number optional

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

    • windowType

      WindowType opcjonalny

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (result: Tab[]) => void

Zwroty

  • Promise<Tab[]>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

reload()

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

Odśwież kartę.

Parametry

  • tabId

    number optional

    Identyfikator karty, którą chcesz ponownie załadować. Domyślnie jest to wybrana karta w bieżącym oknie.

  • reloadProperties

    object opcjonalny

    • bypassCache

      boolean opcjonalne

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

remove()

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

Zamyka co najmniej 1 kartę.

Parametry

  • tabIds

    number | number[]

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

removeCSS()

Promise Chrome 87+ &leq; MV2 Wycofane od Chrome 91
chrome.tabs.removeCSS(
  tabId?: number,
  details: DeleteInjectionDetails,
  callback?: function,
)
: Promise<void>

W platformie Manifest V3 zastąpione przez scripting.removeCSS.

Usuwa ze strony kod CSS, który został wcześniej wstawiony przez wywołanie scripting.insertCSS.

Parametry

  • tabId

    number optional

    Identyfikator karty, z której ma zostać usunięty kod CSS. Domyślnie jest to aktywna karta bieżącego okna.

  • Szczegóły tekstu CSS do usunięcia. Należy ustawić właściwość kodu lub pliku, ale nie można ustawić obu jednocześnie.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Chrome 88 lub nowsza wersja

    Rozwiązuje problem, gdy cały kod CSS zostanie usunięty.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

sendMessage()

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

Wysyła pojedynczą wiadomość do skryptów treści na określonej karcie. Zdarzenie runtime.onMessage jest wywoływane w każdym skrypcie treści uruchomionym na określonej karcie dla bieżącego rozszerzenia.

Parametry

  • tabId

    liczba

  • wiadomość

    każdy

    Wiadomość do wysłania. Ta wiadomość powinna być obiektem, który można przekonwertować na format JSON.

  • Opcje

    object opcjonalny

    • documentId

      ciąg znaków opcjonalny

      Chrome 106 lub nowsza wersja

      Wyślij wiadomość do konkretnego dokumentu identyfikowanego przez documentId, a nie do wszystkich ramek na karcie.

    • frameId

      number optional

      Wyślij wiadomość do określonej ramki identyfikowanej przez frameId, a nie do wszystkich ramek na karcie.

  • callback

    function opcjonalne

    Chrome 99 lub nowsza wersja

    Parametr callback wygląda tak:

    (response: any) => void

    • odpowiedź

      każdy

      Obiekt odpowiedzi JSON wysłany przez moduł obsługi wiadomości.

Zwroty

  • Promise<any>

    Chrome 99 lub nowsza wersja

    Obiekt Promise, który jest rozwiązywany za pomocą odpowiedzi ze skryptu treści. Jeśli podczas nawiązywania połączenia z określoną kartą wystąpi błąd, obietnica zostanie odrzucona.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

sendRequest()

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

Użyj runtime.sendMessage.

Wysyła pojedyncze żądanie do skryptów treści na określonej karcie z opcjonalnym wywołaniem zwrotnym, które ma zostać uruchomione po wysłaniu odpowiedzi. Zdarzenie extension.onRequest jest wywoływane w każdym skrypcie treści uruchomionym na określonej karcie dla bieżącego rozszerzenia.

Parametry

  • tabId

    liczba

  • żądanie

    każdy

  • callback

    function opcjonalne

    Chrome 99 lub nowsza wersja

    Parametr callback wygląda tak:

    (response: any) => void

    • odpowiedź

      każdy

      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, obietnica zostanie odrzucona.

Zwroty

  • Promise<any>

    Chrome 99 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

setZoom()

Obietnica
chrome.tabs.setZoom(
  tabId?: number,
  zoomFactor: number,
  callback?: function,
)
: Promise<void>

Powiększa określoną kartę.

Parametry

  • tabId

    number optional

    Identyfikator karty, którą chcesz powiększyć. Domyślnie jest to aktywna karta w bieżącym oknie.

  • 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 (być może inny niż domyślny) karty.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Chrome 88 lub nowsza wersja

    Rozwiązuje się po zmianie współczynnika powiększenia.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

setZoomSettings()

Obietnica
chrome.tabs.setZoomSettings(
  tabId?: number,
  zoomSettings: ZoomSettings,
  callback?: function,
)
: Promise<void>

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

Parametry

  • tabId

    number optional

    Identyfikator karty, dla której chcesz zmienić ustawienia powiększenia. Domyślnie jest to aktywna karta w bieżącym oknie.

  • zoomSettings

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Chrome 88 lub nowsza wersja

    Rozwiązuje problem po zmianie ustawień powiększenia.

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

ungroup()

Promise Chrome 88 lub nowsza wersja
chrome.tabs.ungroup(
  tabIds: number | [number, ...number[]],
  callback?: function,
)
: Promise<void>

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

Parametry

  • tabIds

    number | [number, ...number[]]

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

unsplit()

Promise Chrome 155+
chrome.tabs.unsplit(
  splitViewId: number,
  callback?: function,
)
: Promise<void>

Rozdziela karty w widoku dzielonym na niezależne karty.

Parametry

  • splitViewId

    liczba

    Identyfikator widoku dzielonego, który ma zostać rozdzielony.

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    () => void

Zwroty

  • thought Promise<void>

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

update()

Obietnica
chrome.tabs.update(
  tabId?: number,
  updateProperties: object,
  callback?: function,
)
: Promise<Tab | undefined>

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

Parametry

  • tabId

    number optional

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

  • updateProperties

    obiekt

    • aktywna

      boolean opcjonalne

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

    • autoDiscardable

      boolean opcjonalne

      Chrome 54 lub nowsza wersja

      Określa, czy karta powinna być automatycznie odrzucana przez przeglądarkę, gdy brakuje zasobów.

    • wyróżniona

      boolean opcjonalne

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

    • Wyciszono

      boolean opcjonalne

      Chrome 45 lub nowsza wersja

      Określa, czy karta ma być wyciszona.

    • openerTabId

      number optional

      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

      boolean opcjonalne

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

    • wybrano

      boolean opcjonalne

      Wycofane

      Użyj wyróżnionego.

      Określa, czy karta powinna być wybrana.

    • URL

      ciąg znaków opcjonalny

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

  • callback

    function opcjonalne

    Parametr callback wygląda tak:

    (tab?: Tab) => void

    • karta

      Tab opcjonalny

      Szczegółowe informacje o zaktualizowanej karcie. Właściwości url, pendingUrl, title i favIconUrl są uwzględniane w obiekcie tabs.Tab tylko wtedy, gdy rozszerzenie ma uprawnienie "tabs" lub uprawnienia hosta do strony.

Zwroty

  • Promise<Tab | undefined>

    Chrome 88 lub nowsza wersja

    Obiekty Promise są obsługiwane tylko w przypadku platformy Manifest V3 i nowszych. Na innych platformach należy używać wywołań zwrotnych.

Wydarzenia

onActivated

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

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

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (activeInfo: object) => void

    • activeInfo

      obiekt

      • tabId

        liczba

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

      • windowId

        liczba

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

onActiveChanged

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

Użyj tabs.onActivated.

Uruchamia się, gdy zmieni się wybrana karta w oknie. Pamiętaj, że adres URL karty może nie być ustawiony w momencie wywołania tego zdarzenia, ale możesz nasłuchiwać zdarzeń tabs.onUpdated, aby otrzymywać powiadomienia o ustawieniu adresu URL.

Parametry

  • callback

    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łączana do okna, np. gdy została przeniesiona między oknami.

Parametry

  • callback

    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 adres URL karty i jej przynależność do grupy kart mogą nie być ustawione w momencie wywołania tego zdarzenia, ale możesz nasłuchiwać zdarzeń onUpdated, aby otrzymywać powiadomienia o ustawieniu adresu URL lub dodaniu karty do grupy kart.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (tab: Tab) => void

onDetached

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

Uruchamiane, gdy karta jest odłączana od okna, np. gdy została przeniesiona między oknami.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (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.

Uruchamiane, gdy zmieniają się podświetlone lub wybrane karty w oknie.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (selectInfo: object) => void

    • selectInfo

      obiekt

      • tabIds

        number[]

        Wszystkie zaznaczone karty w oknie.

      • windowId

        liczba

        Okno, którego karty uległy zmianie.

onHighlighted

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

Uruchamiane, gdy zmieniają się podświetlone lub wybrane karty w oknie.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (highlightInfo: object) => void

    • highlightInfo

      obiekt

      • tabIds

        number[]

        Wszystkie zaznaczone karty w oknie.

      • windowId

        liczba

        Okno, którego karty uległy zmianie.

onMoved

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

Uruchamiane, gdy karta zostanie przeniesiona w obrębie okna. Wywoływane jest tylko jedno zdarzenie przeniesienia, 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ęcznie przeniesioną kartę. To zdarzenie nie jest wywoływane, gdy karta jest przenoszona między oknami. Szczegółowe informacje znajdziesz w artykule tabs.onDetached.

Parametry

  • callback

    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 po zamknięciu karty.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (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,
)

Uruchamiane, gdy karta zostanie zastąpiona inną kartą z powodu renderowania wstępnego lub natychmiastowego.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

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

    • addedTabId

      liczba

    • removedTabId

      liczba

onSelectionChanged

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

Użyj tabs.onActivated.

Uruchamia się, gdy zmieni się wybrana karta w oknie.

Parametry

  • callback

    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

  • callback

    funkcja

    Parametr callback wygląda tak:

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

    • tabId

      liczba

    • changeInfo

      obiekt

      • audible

        boolean opcjonalne

        Chrome 45 lub nowsza wersja

        Nowy stan dźwięku karty.

      • autoDiscardable

        boolean opcjonalne

        Chrome 54 lub nowsza wersja

        Nowy stan karty, który umożliwia automatyczne odrzucanie.

      • odrzucono

        boolean opcjonalne

        Chrome 54 lub nowsza wersja

        Nowy stan odrzucenia karty.

      • favIconUrl

        ciąg znaków opcjonalny

        Nowy adres URL favikony karty.

      • zawieszony

        boolean opcjonalne

        Chrome 132 lub nowsza wersja

        Nowy stan zamrożenia karty.

      • groupId

        number optional

        Chrome 88 lub nowsza wersja

        Nowa grupa karty.

      • mutedInfo

        MutedInfo opcjonalny

        Chrome 46 lub nowsza wersja

        Nowy stan wyciszenia karty i powód zmiany.

      • przypięty

        boolean opcjonalne

        Nowy stan przypięcia karty.

      • splitViewId

        number optional

        Chrome 140 lub nowsza wersja

        Nowy widok dzielony karty.

      • status

        TabStatus opcjonalny

        Stan wczytywania karty.

      • tytuł

        ciąg znaków opcjonalny

        Chrome 48 lub nowsza wersja

        Nowy tytuł karty.

      • URL

        ciąg znaków opcjonalny

        adres URL karty, jeśli uległ on zmianie;

    • karta

onZoomChange

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

Uruchamiane, gdy karta jest powiększona.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (ZoomChangeInfo: object) => void

    • ZoomChangeInfo

      obiekt

      • newZoomFactor

        liczba

      • oldZoomFactor

        liczba

      • tabId

        liczba

      • zoomSettings