tabs
Interagieren Sie mit dem Tab-System des Browsers.
Hinweis:
Beim Verwenden von Manifest V3 oder höher werden die Methoden zum Ausführen von Skripten, Einfügen von CSS und Entfernen von CSS durch die scripting API über die Methoden scripting.executeScript(), scripting.insertCSS() und scripting.removeCSS() bereitgestellt.
Sie können diese API verwenden, um eine Liste der geöffneten Tabs zu erhalten, gefiltert nach verschiedenen Kriterien, sowie um Tabs zu öffnen, zu aktualisieren, zu verschieben, neu zu laden und zu entfernen. Sie können mit dieser API nicht direkt auf die Inhalte zugreifen, die von Tabs gehostet werden, aber Sie können JavaScript und CSS in Tabs einfügen, indem Sie die APIs tabs.executeScript() oder tabs.insertCSS() verwenden.
Sie können den Großteil dieser API ohne besondere Berechtigung verwenden. Allerdings:
-
Um auf
Tab.url,Tab.titleundTab.favIconUrlzuzugreifen (oder um nach diesen Eigenschaften übertabs.query()zu filtern), müssen Sie die Berechtigung"tabs"Berechtigung haben oder Host-Berechtigungen besitzen, die mitTab.urlübereinstimmen.- Der Zugriff auf diese Eigenschaften durch Host-Berechtigungen wird seit Firefox 86 und Chrome 50 unterstützt. In Firefox 85 und früher war stattdessen die "tabs"-Berechtigung erforderlich.
-
Um
tabs.executeScript()odertabs.insertCSS()zu verwenden, müssen Sie die Host-Berechtigung für den Tab haben.
Alternativ können Sie diese Berechtigungen vorübergehend, nur für den derzeit aktiven Tab und nur als Antwort auf eine explizite Benutzeraktion, erhalten, indem Sie um die "activeTab" Berechtigung bitten.
Viele Tab-Operationen verwenden eine Tab-id. Tab-ids sind innerhalb einer Browsersitzung nur für einen einzelnen Tab garantiert einzigartig. Wenn der Browser neu gestartet wird, kann und wird er Tab-ids wiederverwenden. Um Informationen einem Tab über Browser-Neustarts hinweg zuzuordnen, verwenden Sie sessions.setTabValue().
Typen
tabs.MutedInfoReason-
Gibt den Grund an, warum ein Tab stummgeschaltet oder die Stummschaltung aufgehoben wurde.
tabs.MutedInfo-
Dieses Objekt enthält ein boolesches Attribut, das angibt, ob der Tab stummgeschaltet ist, und den Grund für die letzte Zustandsänderung.
tabs.PageSettings-
Wird verwendet, um zu steuern, wie ein Tab als PDF durch die Methode
tabs.saveAsPDF()gerendert wird. tabs.Tab-
Dieser Typ enthält Informationen über einen Tab.
tabs.TabStatus-
Gibt an, ob der Tab das Laden abgeschlossen hat.
tabs.WindowType-
Der Typ des Fensters, das diesen Tab hostet.
tabs.ZoomSettingsMode-
Definiert, ob Zoomänderungen vom Browser, durch die Erweiterung oder gar nicht gehandhabt werden.
tabs.ZoomSettingsScope-
Definiert, ob Zoomänderungen für den Ursprung der Seite bestehen bleiben oder nur in diesem Tab wirksam werden.
tabs.ZoomSettings-
Definiert Zoom-Einstellungen
mode,scopeund den Standard-Zoomfaktor.
Eigenschaften
tabs.TAB_ID_NONE-
Ein spezieller ID-Wert, der Tabs gegeben wird, die keine Browser-Tabs sind (zum Beispiel Tabs in Devtools-Fenstern).
tabs.SPLIT_VIEW_ID_NONE-
Ein spezieller ID-Wert, der Tabs zugewiesen wird, die sich nicht in einer Split-Ansicht befinden.
Funktionen
tabs.captureTab()-
Erstellt eine Data-URL, die ein Bild des sichtbaren Bereichs des angegebenen Tabs codiert.
tabs.captureVisibleTab()-
Erstellt eine Data-URL, die ein Bild des sichtbaren Bereichs des derzeit aktiven Tabs im angegebenen Fenster codiert.
tabs.connect()-
Stellt eine Nachrichtenverbindung zwischen den Hintergrundskripten der Erweiterung (oder anderen privilegierten Skripten, wie Pop-up-Skripten oder Optionsseitenskripten) und allen Inhalts-Skripten her, die im angegebenen Tab ausgeführt werden.
tabs.create()-
Erstellt einen neuen Tab.
tabs.detectLanguage()-
Erkennt die Hauptsprache des Inhalts in einem Tab.
tabs.discard()-
Verwirft einen oder mehrere Tabs.
tabs.duplicate()-
Dupliziert einen Tab.
tabs.executeScript()(Manifest V2 nur)-
Integriert JavaScript-Code in eine Seite.
tabs.get()-
Ruft Details über den angegebenen Tab ab.
tabs.getAllInWindow()Veraltet-
Ruft Details über alle Tabs im angegebenen Fenster ab.
tabs.getCurrent()-
Ruft Informationen über den Tab ab, in dem dieses Skript ausgeführt wird, als ein
tabs.Tab-Objekt. tabs.getSelected()Veraltet-
Ruft den Tab ab, der im angegebenen Fenster ausgewählt ist. Veraltet: verwenden Sie stattdessen
tabs.query({active: true}). tabs.getZoom()-
Ruft den aktuellen Zoomfaktor des angegebenen Tabs ab.
tabs.getZoomSettings()-
Ruft die aktuellen Zoom-Einstellungen für den angegebenen Tab ab.
tabs.goForward()-
Geht zur nächsten Seite, wenn eine verfügbar ist.
tabs.goBack()-
Geht zur vorherigen Seite, wenn eine verfügbar ist.
tabs.group()-
Fügt Tabs zu einer Tab-Gruppe hinzu.
tabs.hide()Experimentell-
Blendet einen oder mehrere Tabs aus.
tabs.highlight()-
Hebt einen oder mehrere Tabs hervor.
tabs.insertCSS()(Manifest V2 nur)-
Integriert CSS in eine Seite.
tabs.move()-
Verschiebt einen oder mehrere Tabs zu einer neuen Position im selben Fenster oder zu einem anderen Fenster.
tabs.moveInSuccession()-
Ändert die Reihenfolgenbeziehung für eine Gruppe von Tabs.
tabs.print()-
Drucken Sie den Inhalt des aktiven Tabs.
tabs.printPreview()-
Öffnet die Druckvorschau für den aktiven Tab.
tabs.query()-
Ruft alle Tabs ab, die die angegebenen Eigenschaften besitzen, oder alle Tabs, wenn keine Eigenschaften angegeben sind.
tabs.reload()-
Lädt einen Tab neu und kann dabei optional den lokalen Web-Cache umgehen.
tabs.remove()-
Schließt einen oder mehrere Tabs.
tabs.removeCSS()(Manifest V2 nur)-
Entfernt CSS von einer Seite, das zuvor durch einen Aufruf von
tabs.insertCSS()integriert wurde. tabs.saveAsPDF()-
Speichert die aktuelle Seite als PDF.
tabs.sendMessage()-
Sendet eine einzelne Nachricht an die Inhalts-Skripte im angegebenen Tab.
tabs.sendRequest()Veraltet-
Sendet eine einzelne Anfrage an die Inhalts-Skripte im angegebenen Tab. Veraltet: verwenden Sie stattdessen
tabs.sendMessage(). tabs.setZoom()-
Zoomt den angegebenen Tab.
tabs.setZoomSettings()-
Setzt die Zoom-Einstellungen für den angegebenen Tab.
tabs.show()Experimentell-
Zeigt einen oder mehrere Tabs an, die
ausgeblendetwurden. tabs.toggleReaderMode()-
Umschalten des Lesemodus für den angegebenen Tab.
tabs.ungroup()-
Entfernt Tabs aus Tab-Gruppen.
tabs.update()-
Navigiert den Tab zu einer neuen URL oder ändert andere Eigenschaften des Tabs.
tabs.warmup()-
Bereitet den Tab vor, um einen möglichen nachfolgenden Wechsel zu beschleunigen.
Ereignisse
tabs.onActivated-
Wird ausgelöst, wenn sich der aktive Tab in einem Fenster ändert. Beachten Sie, dass die URL des Tabs möglicherweise nicht gesetzt ist, wenn dieses Ereignis ausgelöst wird.
tabs.onActiveChangedVeraltet-
Wird ausgelöst, wenn sich der ausgewählte Tab in einem Fenster ändert. Veraltet: verwenden Sie stattdessen
tabs.onActivated. tabs.onAttached-
Wird ausgelöst, wenn ein Tab an ein Fenster angehängt wird, zum Beispiel weil er zwischen Fenstern verschoben wurde.
tabs.onCreated-
Wird ausgelöst, wenn ein Tab erstellt wird. Beachten Sie, dass die URL des Tabs möglicherweise nicht gesetzt ist, wenn dieses Ereignis ausgelöst wird.
tabs.onDetached-
Wird ausgelöst, wenn ein Tab von einem Fenster getrennt wird, zum Beispiel weil er zwischen Fenstern verschoben wird.
tabs.onHighlightChangedVeraltet-
Wird ausgelöst, wenn sich die hervorgehobenen oder ausgewählten Tabs in einem Fenster ändern. Veraltet: verwenden Sie stattdessen
tabs.onHighlighted. tabs.onHighlighted-
Wird ausgelöst, wenn sich die hervorgehobenen oder ausgewählten Tabs in einem Fenster ändern.
tabs.onMoved-
Wird ausgelöst, wenn ein Tab innerhalb eines Fensters verschoben wird.
tabs.onRemoved-
Wird ausgelöst, wenn ein Tab geschlossen wird.
tabs.onReplaced-
Wird ausgelöst, wenn ein Tab durch einen anderen Tab aufgrund von Vorausladen ersetzt wird.
tabs.onSelectionChangedVeraltet-
Wird ausgelöst, wenn sich der ausgewählte Tab in einem Fenster ändert. Veraltet: verwenden Sie stattdessen
tabs.onActivated. tabs.onUpdated-
Wird ausgelöst, wenn ein Tab aktualisiert wird.
tabs.onZoomChange-
Wird ausgelöst, wenn ein Tab gezoomt wird.
Beispielerweiterungen
- annotate-page
- apply-css
- beastify
- bookmark-it
- chill-out
- commands
- context-menu-copy-link-with-types
- contextual-identities
- cookie-bg-picker
- devtools-panels
- find-across-tabs
- firefox-code-search
- history-deleter
- imagify
- list-cookies
- menu-demo
- menu-labelled-open
- menu-remove-element
- open-my-page-button
- permissions
- session-state
- store-collected-images
- tabs-tabs-tabs
- themed-icons
Browser-Kompatibilität
Hinweis:
Diese API basiert auf der chrome.tabs API von Chromium. Diese Dokumentation leitet sich von tabs.json im Chromium-Code ab.