browser.webNavigation

Beschreibung

Mit der chrome.webNavigation API können Sie Benachrichtigungen zum Status von Navigationsanfragen während der Fahrt erhalten.

Berechtigungen

webNavigation

Für alle browser.webNavigation-Methoden und -Ereignisse müssen Sie die Berechtigung "webNavigation" im Erweiterungsmanifest deklarieren. Beispiel:

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

Konzepte und Verwendung

Ereignisreihenfolge

Bei einer erfolgreich abgeschlossenen Navigation werden Ereignisse in der folgenden Reihenfolge ausgelöst:

onBeforeNavigate -> onCommitted -> [onDOMContentLoaded] -> onCompleted

Jeder Fehler, der während des Prozesses auftritt, führt zu einem onErrorOccurred-Ereignis. Für eine bestimmte Navigation werden nach onErrorOccurred keine weiteren Ereignisse ausgelöst.

Wenn ein Navigationsframe Unterframes enthält, wird sein onCommitted vor dem onBeforeNavigate seiner untergeordneten Elemente ausgelöst, während onCompleted nach dem onCompleted aller seiner untergeordneten Elemente ausgelöst wird.

Wenn das Referenzfragment eines Frames geändert wird, wird ein onReferenceFragmentUpdated-Ereignis ausgelöst. Dieses Ereignis kann jederzeit nach onDOMContentLoaded ausgelöst werden, auch nach onCompleted.

Wenn die History API verwendet wird, um den Status eines Frames zu ändern (z.B. mit history.pushState()), wird ein onHistoryStateUpdated-Ereignis ausgelöst. Dieses Ereignis kann jederzeit nach onDOMContentLoaded ausgelöst werden.

Wenn eine Navigation eine Seite aus dem Back-Forward-Cache wiederhergestellt hat, wird das Ereignis onDOMContentLoaded nicht ausgelöst. Das Ereignis wird nicht ausgelöst, weil der Inhalt bereits beim ersten Besuch der Seite vollständig geladen wurde.

Wenn eine Navigation mit Chrome Instant oder Instant Pages ausgelöst wurde, wird eine vollständig geladene Seite in den aktuellen Tab eingefügt. In diesem Fall wird ein onTabReplaced-Ereignis ausgelöst.

Beziehung zu webRequest-Ereignissen

Es gibt keine definierte Reihenfolge zwischen Ereignissen der webRequest API und Ereignissen der webNavigation API. Es ist möglich, dass webRequest-Ereignisse weiterhin für Frames empfangen werden, die bereits eine neue Navigation gestartet haben, oder dass eine Navigation erst fortgesetzt wird, nachdem die Netzwerkressourcen bereits vollständig geladen wurden.

Im Allgemeinen hängen die webNavigation-Ereignisse eng mit dem in der Benutzeroberfläche angezeigten Navigationsstatus zusammen, während die webRequest-Ereignisse dem Status des Netzwerkstacks entsprechen, der für den Nutzer im Allgemeinen nicht sichtbar ist.

Tab-IDs

Nicht alle Tabs, die gerade geladen werden, entsprechen tatsächlichen Tabs in der Chrome-Benutzeroberfläche, z. B. ein Tab, der vorab gerendert wird. Auf solche Tabs kann nicht über die Tabs API zugegriffen werden. Außerdem können Sie keine Informationen zu ihnen abrufen, indem Sie webNavigation.getFrame() oder webNavigation.getAllFrames() aufrufen. Sobald ein solcher Tab aktiviert wird, wird ein onTabReplaced-Ereignis ausgelöst und der Tab ist über diese APIs zugänglich.

Zeitstempel

Einige technische Besonderheiten bei der Verarbeitung einzelner Chrome-Prozesse durch das Betriebssystem können dazu führen, dass die Uhrzeit zwischen dem Browser selbst und den Erweiterungsprozessen abweicht. Das bedeutet, dass das Attribut timeStamp des Attributs timeStamp des Ereignisses WebNavigation nur intern konsistent ist. Wenn Sie ein Ereignis mit einem anderen Ereignis vergleichen, erhalten Sie den korrekten Offset zwischen ihnen. Wenn Sie sie jedoch mit der aktuellen Zeit innerhalb der Erweiterung vergleichen (z. B. mit (new Date()).getTime()), kann dies zu unerwarteten Ergebnissen führen.

Frame-IDs

Frames innerhalb eines Tabs können durch eine Frame-ID identifiziert werden. Die Frame-ID des Hauptframes ist immer 0, die ID von untergeordneten Frames ist eine positive Zahl. Sobald ein Dokument in einem Frame erstellt wurde, bleibt seine Frame-ID während der Lebensdauer des Dokuments konstant. Ab Chrome 49 ist diese ID auch für die Lebensdauer des Frames (über mehrere Navigationsvorgänge hinweg) konstant.

Da Chrome ein Multiprozess-Browser ist, kann es sein, dass ein Tab unterschiedliche Prozesse verwendet, um die Quelle und das Ziel einer Webseite zu rendern. Wenn also eine Navigation in einem neuen Prozess stattfindet, erhältst du möglicherweise Ereignisse sowohl von der neuen als auch von der alten Seite, bis die neue Navigation bestätigt wurde, d.h. das Ereignis onCommitted für den neuen Hauptframe gesendet wurde. Mit anderen Worten: Es ist möglich, dass mehrere ausstehende Sequenzen von webNavigation-Ereignissen mit derselben frameId vorhanden sind. Die Sequenzen können durch den Schlüssel processId unterschieden werden.

Beachte auch, dass der Prozess während eines vorläufigen Ladevorgangs mehrmals gewechselt werden kann. Dies geschieht, wenn die Last an einen anderen Standort umgeleitet wird. In diesem Fall erhalten Sie wiederholt onBeforeNavigate- und onErrorOccurred-Ereignisse, bis Sie das endgültige onCommitted-Ereignis erhalten.

Ein weiteres Konzept, das bei Erweiterungen problematisch ist, ist der Lebenszyklus des Frames. Ein Frame hostet ein Dokument, das mit einer festgeschriebenen URL verknüpft ist. Das Dokument kann sich ändern (z. B. durch Navigation), die frameId jedoch nicht. Daher ist es schwierig, nur anhand von frameIds festzustellen, ob etwas in einem bestimmten Dokument passiert ist. Wir führen das Konzept einer documentId ein, die eine eindeutige Kennung pro Dokument ist. Wenn ein Frame aufgerufen wird und ein neues Dokument geöffnet wird, ändert sich die Kennung. Dieses Feld ist nützlich, um zu bestimmen, wann Seiten ihren Lebenszyklusstatus ändern (zwischen Vorrendering/aktiv/im Cache gespeichert), da es gleich bleibt.

Übergangstypen und Qualifizierer

Das Ereignis webNavigation onCommitted hat die Attribute transitionType und transitionQualifiers. Der Übergangstyp ist derselbe wie in der History API, die beschreibt, wie der Browser zu dieser bestimmten URL navigiert ist. Außerdem können mehrere Übergangs-Kennzeichner zurückgegeben werden, die die Navigation weiter definieren.

Es gibt die folgenden Übergangsqualifizierer:

ÜbergangsqualifiziererBeschreibung
"client_redirect"Während der Navigation ist mindestens eine Weiterleitung aufgetreten, die durch JavaScript- oder Meta-Refresh-Tags auf der Seite verursacht wurde.
"server_redirect"Während der Navigation ist mindestens eine Weiterleitung aufgetreten, die durch vom Server gesendete HTTP-Header verursacht wurde.
"forward_back"Der Nutzer hat die Schaltfläche „Vorwärts“ oder „Zurück“ verwendet, um die Navigation zu starten.
"from_address_bar"Der Nutzer hat die Navigation über die Adressleiste (Omnibox) gestartet.

Beispiele

Wenn Sie diese API ausprobieren möchten, installieren Sie das webNavigation API-Beispiel aus dem Repository chrome-extension-samples.

Typen

TransitionQualifier

Chrome 44 und höher browser.* seit Chrome 148

Enum

"client_redirect"

"server_redirect"

"forward_back"

"from_address_bar"

TransitionType

Chrome 44 und höher browser.* seit Chrome 148

Ursache der Navigation. Es werden dieselben Übergangstypen wie in der History API verwendet. Dies sind dieselben Übergangstypen wie in der History API, nur dass "start_page" anstelle von "auto_toplevel" verwendet wird (aus Gründen der Abwärtskompatibilität).

Enum

"link"

"typed"

"auto_bookmark"

"auto_subframe"

"manual_subframe"

"generated"

"start_page"

form_submit

"reload"

"keyword"

"keyword_generated"

Methoden

getAllFrames()

browser.webNavigation.getAllFrames(
  details: object,
)
: Promise<object[] | undefined>

Ruft Informationen zu allen Frames eines bestimmten Tabs ab.

Parameter

  • Details

    Objekt

    Informationen zum Tab, aus dem alle Frames abgerufen werden sollen.

    • tabId

      Zahl

      Die ID des Tabs.

Ausgabe

  • Promise<object[] | undefined>

    Chrome 93 und höher browser.* seit Chrome 148

getFrame()

browser.webNavigation.getFrame(
  details: object,
)
: Promise<object | undefined>

Ruft Informationen zum angegebenen Frame ab. Ein Frame bezieht sich auf ein <iframe> oder ein <frame> einer Webseite und wird durch eine Tab-ID und eine Frame-ID identifiziert.

Parameter

  • Details

    Objekt

    Informationen zum Frame, zu dem Informationen abgerufen werden sollen.

    • documentId

      String optional

      Chrome 106 und höher browser.* seit Chrome 148

      Die UUID des Dokuments. Wenn die „frameId“ und/oder „tabId“ angegeben sind, werden sie mit dem Dokument abgeglichen, das über die angegebene Dokument-ID gefunden wurde.

    • frameId

      number optional

      Die ID des Frames im angegebenen Tab.

    • processId

      number optional

      Seit Chrome 49 veraltet

      Frames werden jetzt eindeutig durch ihre Tab-ID und Frame-ID identifiziert. Die Prozess-ID ist nicht mehr erforderlich und wird daher ignoriert.

      Die ID des Prozesses, der den Renderer für diesen Tab ausführt.

    • tabId

      number optional

      Die ID des Tabs, in dem sich der Frame befindet.

Ausgabe

  • Promise<object | undefined>

    Chrome 93 und höher browser.* seit Chrome 148

Ereignisse

onBeforeNavigate

browser.webNavigation.onBeforeNavigate.addListener(
  callback: function,
  filters?: object,
)

Wird ausgelöst, wenn eine Navigation bevorsteht.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Lebenszyklus, in dem sich das Dokument befindet.

      • frameId

        Zahl

        0 gibt an, dass die Navigation im Fenster mit dem Tab-Inhalt erfolgt. Ein positiver Wert gibt an, dass die Navigation in einem Unterframe erfolgt. Frame-IDs sind für einen bestimmten Tab und Prozess eindeutig.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Typ des Frames, in dem die Navigation stattgefunden hat.

      • parentDocumentId

        String optional

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des übergeordneten Dokuments, zu dem dieser Frame gehört. Dieses Feld wird nicht festgelegt, wenn es kein übergeordnetes Element gibt.

      • parentFrameId

        Zahl

        Die ID des übergeordneten Frames oder -1, wenn dies der Hauptframe ist.

      • processId

        Zahl

        Seit Chrome 50 veraltet

        Die „processId“ wird für dieses Ereignis nicht mehr festgelegt, da der Prozess, der das resultierende Dokument rendert, erst bei „onCommit“ bekannt ist.

        Der Wert von -1.

      • tabId

        Zahl

        Die ID des Tabs, in dem die Navigation stattfinden soll.

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem der Browser die Navigation starten wollte, in Millisekunden seit der Epoche.

      • URL

        String

  • Filter

    Objekt optional

    • Bedingungen, die die URL erfüllen muss, zu der navigiert wird.

onCommitted

browser.webNavigation.onCommitted.addListener(
  callback: function,
  filters?: object,
)

Wird ausgelöst, wenn eine Navigation bestätigt wird. Das Dokument (und die Ressourcen, auf die es verweist, z. B. Bilder und Unterframes) wird möglicherweise noch heruntergeladen, aber zumindest ein Teil des Dokuments wurde vom Server empfangen und der Browser hat sich entschieden, zum neuen Dokument zu wechseln.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • documentId

        String

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des geladenen Dokuments.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Lebenszyklus, in dem sich das Dokument befindet.

      • frameId

        Zahl

        0 gibt an, dass die Navigation im Fenster mit dem Tab-Inhalt erfolgt. Ein positiver Wert gibt an, dass die Navigation in einem Unterframe erfolgt. Frame-IDs sind innerhalb eines Tabs eindeutig.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Typ des Frames, in dem die Navigation stattgefunden hat.

      • parentDocumentId

        String optional

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des übergeordneten Dokuments, zu dem dieser Frame gehört. Dieses Feld wird nicht festgelegt, wenn es kein übergeordnetes Element gibt.

      • parentFrameId

        Zahl

        Chrome 74 oder höher browser.* seit Chrome 148

        Die ID des übergeordneten Frames oder -1, wenn dies der Hauptframe ist.

      • processId

        Zahl

        Die ID des Prozesses, der den Renderer für diesen Frame ausführt.

      • tabId

        Zahl

        Die ID des Tabs, in dem die Navigation erfolgt.

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem die Navigation bestätigt wurde, in Millisekunden seit der Epoche.

      • transitionQualifiers

        Eine Liste von Übergangsqualifizierern.

      • transitionType

        Ursache der Navigation.

      • URL

        String

  • Filter

    Objekt optional

    • Bedingungen, die die URL erfüllen muss, zu der navigiert wird.

onCompleted

browser.webNavigation.onCompleted.addListener(
  callback: function,
  filters?: object,
)

Wird ausgelöst, wenn ein Dokument, einschließlich der Ressourcen, auf die es verweist, vollständig geladen und initialisiert wurde.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • documentId

        String

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des geladenen Dokuments.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Lebenszyklus, in dem sich das Dokument befindet.

      • frameId

        Zahl

        0 gibt an, dass die Navigation im Fenster mit dem Tab-Inhalt erfolgt. Ein positiver Wert gibt an, dass die Navigation in einem Unterframe erfolgt. Frame-IDs sind innerhalb eines Tabs eindeutig.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Typ des Frames, in dem die Navigation stattgefunden hat.

      • parentDocumentId

        String optional

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des übergeordneten Dokuments, zu dem dieser Frame gehört. Dieses Feld wird nicht festgelegt, wenn es kein übergeordnetes Element gibt.

      • parentFrameId

        Zahl

        Chrome 74 oder höher browser.* seit Chrome 148

        Die ID des übergeordneten Frames oder -1, wenn dies der Hauptframe ist.

      • processId

        Zahl

        Die ID des Prozesses, der den Renderer für diesen Frame ausführt.

      • tabId

        Zahl

        Die ID des Tabs, in dem die Navigation erfolgt.

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem das Dokument vollständig geladen wurde, in Millisekunden seit der Epoche.

      • URL

        String

  • Filter

    Objekt optional

    • Bedingungen, die die URL erfüllen muss, zu der navigiert wird.

onCreatedNavigationTarget

browser.webNavigation.onCreatedNavigationTarget.addListener(
  callback: function,
  filters?: object,
)

Wird ausgelöst, wenn ein neues Fenster oder ein neuer Tab in einem vorhandenen Fenster erstellt wird, um eine Navigation zu hosten.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • sourceFrameId

        Zahl

        Die ID des Frames mit sourceTabId, in dem die Navigation ausgelöst wird. 0 gibt den Hauptframe an.

      • sourceProcessId

        Zahl

        Die ID des Prozesses, der den Renderer für den Quellframe ausführt.

      • sourceTabId

        Zahl

        Die ID des Tabs, in dem die Navigation ausgelöst wird.

      • tabId

        Zahl

        Die ID des Tabs, in dem die URL geöffnet wird

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem der Browser eine neue Ansicht erstellen wollte, in Millisekunden seit der Epoche.

      • URL

        String

        Die URL, die im neuen Fenster geöffnet werden soll.

  • Filter

    Objekt optional

    • Bedingungen, die die URL erfüllen muss, zu der navigiert wird.

onDOMContentLoaded

browser.webNavigation.onDOMContentLoaded.addListener(
  callback: function,
  filters?: object,
)

Wird ausgelöst, wenn das DOM der Seite vollständig erstellt ist, die referenzierten Ressourcen aber möglicherweise noch nicht vollständig geladen sind.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • documentId

        String

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des geladenen Dokuments.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Lebenszyklus, in dem sich das Dokument befindet.

      • frameId

        Zahl

        0 gibt an, dass die Navigation im Fenster mit dem Tab-Inhalt erfolgt. Ein positiver Wert gibt an, dass die Navigation in einem Unterframe erfolgt. Frame-IDs sind innerhalb eines Tabs eindeutig.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Typ des Frames, in dem die Navigation stattgefunden hat.

      • parentDocumentId

        String optional

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des übergeordneten Dokuments, zu dem dieser Frame gehört. Dieses Feld wird nicht festgelegt, wenn es kein übergeordnetes Element gibt.

      • parentFrameId

        Zahl

        Chrome 74 oder höher browser.* seit Chrome 148

        Die ID des übergeordneten Frames oder -1, wenn dies der Hauptframe ist.

      • processId

        Zahl

        Die ID des Prozesses, der den Renderer für diesen Frame ausführt.

      • tabId

        Zahl

        Die ID des Tabs, in dem die Navigation erfolgt.

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem das DOM der Seite vollständig erstellt wurde, in Millisekunden seit der Epoche.

      • URL

        String

  • Filter

    Objekt optional

    • Bedingungen, die die URL erfüllen muss, zu der navigiert wird.

onErrorOccurred

browser.webNavigation.onErrorOccurred.addListener(
  callback: function,
  filters?: object,
)

Wird ausgelöst, wenn ein Fehler auftritt und die Navigation abgebrochen wird. Das kann passieren, wenn entweder ein Netzwerkfehler aufgetreten ist oder der Nutzer die Navigation abgebrochen hat.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • documentId

        String

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des geladenen Dokuments.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Lebenszyklus, in dem sich das Dokument befindet.

      • Fehler

        String

        Die Fehlerbeschreibung.

      • frameId

        Zahl

        0 gibt an, dass die Navigation im Fenster mit dem Tab-Inhalt erfolgt. Ein positiver Wert gibt an, dass die Navigation in einem Unterframe erfolgt. Frame-IDs sind innerhalb eines Tabs eindeutig.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Typ des Frames, in dem die Navigation stattgefunden hat.

      • parentDocumentId

        String optional

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des übergeordneten Dokuments, zu dem dieser Frame gehört. Dieses Feld wird nicht festgelegt, wenn es kein übergeordnetes Element gibt.

      • parentFrameId

        Zahl

        Chrome 74 oder höher browser.* seit Chrome 148

        Die ID des übergeordneten Frames oder -1, wenn dies der Hauptframe ist.

      • processId

        Zahl

        Seit Chrome 50 veraltet

        Die „processId“ ist für dieses Ereignis nicht mehr festgelegt.

        Der Wert von -1.

      • tabId

        Zahl

        Die ID des Tabs, in dem die Navigation erfolgt.

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem der Fehler aufgetreten ist, in Millisekunden seit der Epoche.

      • URL

        String

  • Filter

    Objekt optional

    • Bedingungen, die die URL erfüllen muss, zu der navigiert wird.

onHistoryStateUpdated

browser.webNavigation.onHistoryStateUpdated.addListener(
  callback: function,
  filters?: object,
)

Wird ausgelöst, wenn der Verlauf des Frames auf eine neue URL aktualisiert wurde. Alle zukünftigen Ereignisse für diesen Frame verwenden die aktualisierte URL.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • documentId

        String

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des geladenen Dokuments.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Lebenszyklus, in dem sich das Dokument befindet.

      • frameId

        Zahl

        0 gibt an, dass die Navigation im Fenster mit dem Tab-Inhalt erfolgt. Ein positiver Wert gibt an, dass die Navigation in einem Unterframe erfolgt. Frame-IDs sind innerhalb eines Tabs eindeutig.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Typ des Frames, in dem die Navigation stattgefunden hat.

      • parentDocumentId

        String optional

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des übergeordneten Dokuments, zu dem dieser Frame gehört. Dieses Feld wird nicht festgelegt, wenn es kein übergeordnetes Element gibt.

      • parentFrameId

        Zahl

        Chrome 74 oder höher browser.* seit Chrome 148

        Die ID des übergeordneten Frames oder -1, wenn dies der Hauptframe ist.

      • processId

        Zahl

        Die ID des Prozesses, der den Renderer für diesen Frame ausführt.

      • tabId

        Zahl

        Die ID des Tabs, in dem die Navigation erfolgt.

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem die Navigation bestätigt wurde, in Millisekunden seit der Epoche.

      • transitionQualifiers

        Eine Liste von Übergangsqualifizierern.

      • transitionType

        Ursache der Navigation.

      • URL

        String

  • Filter

    Objekt optional

    • Bedingungen, die die URL erfüllen muss, zu der navigiert wird.

onReferenceFragmentUpdated

browser.webNavigation.onReferenceFragmentUpdated.addListener(
  callback: function,
  filters?: object,
)

Wird ausgelöst, wenn das Referenzfragment eines Frames aktualisiert wurde. Alle zukünftigen Ereignisse für diesen Frame verwenden die aktualisierte URL.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • documentId

        String

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des geladenen Dokuments.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Lebenszyklus, in dem sich das Dokument befindet.

      • frameId

        Zahl

        0 gibt an, dass die Navigation im Fenster mit dem Tab-Inhalt erfolgt. Ein positiver Wert gibt an, dass die Navigation in einem Unterframe erfolgt. Frame-IDs sind innerhalb eines Tabs eindeutig.

      • Chrome 106 und höher browser.* seit Chrome 148

        Der Typ des Frames, in dem die Navigation stattgefunden hat.

      • parentDocumentId

        String optional

        Chrome 106 und höher browser.* seit Chrome 148

        Eine UUID des übergeordneten Dokuments, zu dem dieser Frame gehört. Dieses Feld wird nicht festgelegt, wenn es kein übergeordnetes Element gibt.

      • parentFrameId

        Zahl

        Chrome 74 oder höher browser.* seit Chrome 148

        Die ID des übergeordneten Frames oder -1, wenn dies der Hauptframe ist.

      • processId

        Zahl

        Die ID des Prozesses, der den Renderer für diesen Frame ausführt.

      • tabId

        Zahl

        Die ID des Tabs, in dem die Navigation erfolgt.

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem die Navigation bestätigt wurde, in Millisekunden seit der Epoche.

      • transitionQualifiers

        Eine Liste von Übergangsqualifizierern.

      • transitionType

        Ursache der Navigation.

      • URL

        String

  • Filter

    Objekt optional

    • Bedingungen, die die URL erfüllen muss, zu der navigiert wird.

onTabReplaced

browser.webNavigation.onTabReplaced.addListener(
  callback: function,
)

Wird ausgelöst, wenn der Inhalt des Tabs durch einen anderen (normalerweise zuvor vorgerenderten) Tab ersetzt wird.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

    • Details

      Objekt

      • replacedTabId

        Zahl

        Die ID des ersetzten Tabs.

      • tabId

        Zahl

        Die ID des Tabs, der den alten Tab ersetzt hat.

      • timeStamp

        Zahl

        Der Zeitpunkt, zu dem der Ersatz stattgefunden hat, in Millisekunden seit der Epoche.