tabs

Interagieren Sie mit dem Tab-System des Browsers.

Hinweis: Bei der Verwendung von Manifest V3 oder höher werden die Methoden zur Skriptausführung, 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 geöffneter Tabs zu erhalten, die nach verschiedenen Kriterien gefiltert ist, 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 von Tabs gehosteten Inhalte zugreifen, aber Sie können JavaScript und CSS in Tabs mit den APIs tabs.executeScript() oder tabs.insertCSS() einfügen.

Sie können den Großteil dieser API ohne spezielle Berechtigung verwenden. Allerdings:

  • Um auf Tab.url, Tab.title und Tab.favIconUrl zuzugreifen (oder um nach diesen Eigenschaften über tabs.query() zu filtern), müssen Sie die "tabs" Berechtigung besitzen oder Host-Berechtigungen haben, die mit Tab.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() oder tabs.insertCSS() zu verwenden, müssen Sie die Host-Berechtigung für den Tab besitzen.

Alternativ können Sie diese Berechtigungen vorübergehend nur für den aktuell aktiven Tab und nur als Reaktion auf eine explizite Benutzeraktion erhalten, indem Sie die "activeTab"-Berechtigung anfordern.

Viele Tab-Operationen verwenden eine Tab-id. Tab-ids sind innerhalb einer Browsersitzung garantiert einzigartig für einen einzigen Tab. Wenn der Browser neu gestartet wird, kann und wird er Tab-ids wiederverwenden. Um Informationen mit einem Tab über Browserneustarts hinweg zu verknüpfen, 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 Boolean, das angibt, ob der Tab stummgeschaltet ist, und den Grund für die letzte Statusä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 das Laden des Tabs abgeschlossen ist.

tabs.WindowType

Der Fenstertyp, der diesen Tab hostet.

tabs.ZoomSettingsMode

Definiert, ob Zoomänderungen vom Browser, von der Erweiterung oder deaktiviert sind.

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, scope, und 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).

Funktionen

tabs.captureTab()

Erstellt eine Daten-URL, die ein Bild des sichtbaren Bereichs des angegebenen Tabs encodiert.

tabs.captureVisibleTab()

Erstellt eine Daten-URL, die ein Bild des sichtbaren Bereichs des aktuell aktiven Tabs im angegebenen Fenster encodiert.

tabs.connect()

Richtet eine Nachrichtenverbindung zwischen den Hintergrund-Skripten der Erweiterung (oder anderen privilegierten Skripten, wie Popup-Skripten oder Optionsseiten-Skripten) und allen Inhalts-Skripten ein, 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)

Injects 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, falls eine verfügbar ist.

tabs.goBack()

Geht zur vorherigen Seite zurück, falls eine verfügbar ist.

tabs.group()

Fügt Tabs zu einer Tab-Gruppe hinzu.

tabs.hide() Experimentell

Verbirgt einen oder mehrere Tabs.

tabs.highlight()

Hebt einen oder mehrere Tabs hervor.

tabs.insertCSS() (Manifest V2 nur)

Injects CSS in eine Seite.

tabs.move()

Verschiebt einen oder mehrere Tabs an eine neue Position im gleichen Fenster oder in ein anderes Fenster.

tabs.moveInSuccession()

Modifiziert die Nachfolgezusammenhang für eine Gruppe von Tabs.

tabs.print()

Druckt 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 haben oder alle Tabs, wenn keine Eigenschaften angegeben sind.

tabs.reload()

Lädt einen Tab neu, optional unter Umgehung des lokalen Web-Cache.

tabs.remove()

Schließt einen oder mehrere Tabs.

{{WebExtAPIRef("tabs.removeCSS()}} (Manifest V2 nur)

Entfernt CSS aus einer Seite, das zuvor durch Aufruf von tabs.insertCSS() injiziert wurde.

tabs.saveAsPDF()

Speichert die aktuelle Seite als PDF.

tabs.sendMessage()

Sendet eine einzelne Nachricht an das/die Inhaltsskript(e) im angegebenen Tab.

tabs.sendRequest() Veraltet

Sendet eine einzelne Anfrage an das/die Inhaltsskript(e) im angegebenen Tab. Veraltet: Verwenden Sie stattdessen tabs.sendMessage().

tabs.setZoom()

Zoomt den angegebenen Tab.

tabs.setZoomSettings()

Legt die Zoom-Einstellungen für den angegebenen Tab fest.

tabs.show() Experimentell

Zeigt einen oder mehrere Tabs an, die versteckt wurden.

tabs.toggleReaderMode()

Schaltet den Lesemodus für den angegebenen Tab um.

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 potenziellen folgenden Wechsel schneller zu machen.

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 festgelegt ist, wenn dieses Ereignis ausgelöst wird.

tabs.onActiveChanged Veraltet

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 es zwischen Fenstern verschoben wurde.

tabs.onCreated

Wird ausgelöst, wenn ein Tab erstellt wird. Beachten Sie, dass die URL des Tabs möglicherweise nicht festgelegt ist, wenn dieses Ereignis ausgelöst wird.

tabs.onDetached

Wird ausgelöst, wenn ein Tab von einem Fenster gelöst wird, zum Beispiel weil es zwischen Fenstern verschoben wird.

tabs.onHighlightChanged Veraltet

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 Prerendering ersetzt wird.

tabs.onSelectionChanged Veraltet

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.

Browser-Kompatibilität

Beispielerweiterungen