Beschreibung
Mit der chrome.webNavigation
API können Sie sich Benachrichtigungen zum Status von laufenden Navigationsanfragen senden lassen.
Berechtigungen
webNavigation
Manifest
Für alle chrome.webNavigation
-Methoden und -Ereignisse muss die Berechtigung „webNavigation“ im Erweiterungsmanifest deklariert werden. Beispiel:
{
"name": "My extension",
...
"permissions": [
"webNavigation"
],
...
}
Ereignisreihenfolge
Bei einer erfolgreich abgeschlossenen Navigation werden Ereignisse in der folgenden Reihenfolge ausgelöst:
onBeforeNavigate -> onCommitted -> [onDOMContentLoaded] -> onCompleted
Jeder Fehler, der während des Vorgangs auftritt, führt zum Ereignis onErrorOccurred
. Für eine bestimmte Navigation werden nach onErrorOccurred
keine weiteren Ereignisse ausgelöst.
Wenn ein Navigationsframe Subframes enthält, wird sein onCommitted
vor einem der onBeforeNavigate
seiner untergeordneten Frames ausgelöst, während onCompleted
nach allen onCompleted
seiner untergeordneten Frames ausgelöst wird.
Wenn das Referenzfragment eines Frames geändert wird, wird das Ereignis onReferenceFragmentUpdated
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 nach dem onDOMContentLoaded
jederzeit ausgelöst werden.
Wenn bei einer Navigation eine Seite aus dem Back-Forward-Cache wiederhergestellt wurde, wird das Ereignis onDOMContentLoaded
nicht ausgelöst. Das Ereignis wird nicht ausgelöst, weil der Inhalt des Inhalts bereits beim ersten Besuch der Seite geladen wurde.
Wenn eine Navigation über Chrome Instant oder Instant Pages ausgelöst wurde, wird eine vollständig geladene Seite in den aktuellen Tab verschoben. In diesem Fall wird das Ereignis onTabReplaced
ausgelöst.
Bezug zu webRequest-Ereignissen
Es gibt keine festgelegte Reihenfolge zwischen Ereignissen der webRequest API und den Ereignissen der webNavigation API. Es ist möglich, dass WebRequest-Ereignisse weiterhin für Frames empfangen werden, mit denen bereits eine neue Navigation gestartet wurde, oder dass die Navigation erst fortgesetzt wird, nachdem die Netzwerkressourcen bereits vollständig geladen wurden.
Im Allgemeinen stehen die webNavigation-Ereignisse in engem Zusammenhang mit dem in der UI angezeigten Navigationsstatus, während die webRequest-Ereignisse dem Status des Netzwerkstacks entsprechen, der für den Nutzer im Allgemeinen nicht transparent ist.
Tab-IDs
Nicht alle Navigationstabs entsprechen den tatsächlichen Tabs auf der Benutzeroberfläche von Chrome, z.B. ein Tab, der vorab gerendert wird. Auf diese Tabs kann nicht über die Tabs API zugegriffen werden. Sie können auch keine Informationen zu den Tabs über webNavigation.getFrame
oder webNavigation.getAllFrames
anfordern. Sobald ein solcher Tab eingesetzt wird, wird ein onTabReplaced
-Ereignis ausgelöst und über diese APIs kann auf die Tabs zugegriffen werden.
Zeitstempel
Dabei ist zu beachten, dass einige technische Unregelmäßigkeiten bei der Verarbeitung unterschiedlicher Chrome-Prozesse durch das Betriebssystem dazu führen können, dass die Uhr zwischen dem Browser selbst und den Erweiterungsprozessen verzerrt wird. Das bedeutet, dass die Eigenschaft timeStamp
der WebNavigation-Ereignisse nur intern konsistent ist. Wenn Sie ein Ereignis mit einem anderen vergleichen, erhalten Sie den korrekten Offset. Ein Vergleich mit der aktuellen Zeit in der Erweiterung (z. B. über (new Date()).getTime()
) kann jedoch zu unerwarteten Ergebnissen führen.
Frame-IDs
Frames auf einem Tab können durch eine Frame-ID identifiziert werden. Die Frame-ID des Hauptframes ist immer 0, die ID der 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 Navigationen hinweg) konstant.
Da Chrome mehrere Prozesse umfasst, werden für einen Tab möglicherweise unterschiedliche Prozesse verwendet, um die Quelle und das Ziel einer Webseite zu rendern. Wenn eine Navigation in einem neuen Prozess stattfindet, empfangen Sie möglicherweise Ereignisse sowohl von der neuen als auch von der alten Seite, bis die neue Navigation per Commit bestätigt wird (d.h., das Ereignis onCommitted
wird für den neuen Hauptframe gesendet). Mit anderen Worten ist es möglich, dass mehrere ausstehende Sequenzen von webNavigation-Ereignissen mit derselben frameId
vorhanden sind. Die Sequenzen lassen sich am Schlüssel processId
unterscheiden.
Beachten Sie auch, dass während eines vorläufigen Ladevorgangs der Prozess mehrmals gewechselt werden kann. Dies geschieht, wenn die Last an eine andere Website weitergeleitet wird. In diesem Fall erhalten Sie wiederholte onBeforeNavigate
- und onErrorOccurred
-Ereignisse, bis Sie das letzte onCommitted
-Ereignis erhalten.
Ein weiteres Konzept, das bei Erweiterungen problematisch ist, ist der Lebenszyklus des Frames. In einem Frame wird ein Dokument gehostet, das mit einer per Commit gespeicherten URL verknüpft ist. Das Dokument kann sich ändern (z. B. durch Navigieren), die frameId jedoch nicht. Daher ist es schwierig, etwas in einem bestimmten Dokument nur mit frameIds in Verbindung zu bringen. Wir führen das Konzept einer documentId ein, bei der es sich um eine eindeutige Kennung pro Dokument handelt. Wenn in einem Frame navigiert wird und ein neues Dokument geöffnet wird, ändert sich die ID. Dieses Feld ist nützlich, um zu ermitteln, wann Seiten ihren Lebenszyklusstatus (zwischen Pre-Rendering/Aktiv/Cache) ändern, da er gleich bleibt.
Übergangstypen und -qualifizierer
Das Ereignis onCommitted
der webNavigation API hat ein transitionType
- und ein transitionQualifiers
-Attribut. Der Übergangstyp ist derselbe wie in der history API verwendet. Darin wird beschrieben, wie der Browser zu dieser bestimmten URL navigiert ist. Außerdem können mehrere Übergangsqualifizierer zurückgegeben werden, die die Navigation genauer definieren.
Es gibt folgende Übergangsqualifizierer:
Übergangs-Qualifier | Beschreibung |
---|---|
"client_redirect" | Während der Navigation erfolgte mindestens eine durch JavaScript- oder Meta-Refresh-Tags auf der Seite verursachte Weiterleitung. |
"server_redirect" | Während der Navigation erfolgte mindestens eine Weiterleitung, die durch HTTP-Header vom Server verursacht wurde. |
„forward_back“ | Der Nutzer hat die Schaltfläche „Weiter“ oder „Zurück“ verwendet, um die Navigation zu starten. |
„from_address_bar“ | Der Nutzer hat die Navigation über die Adressleiste (auch Omnibox genannt) gestartet. |
Beispiele
Wenn Sie diese API testen möchten, installieren Sie das Beispiel für die webNavigation API aus dem Repository chrome-extension-sample.
Typen
TransitionQualifier
Enum
"client_redirect"
"server_redirect"
"forward_back"
"from_address_bar"
TransitionType
Ursache der Navigation. Es werden die in der History API definierten Übergangstypen verwendet. Es sind die gleichen Übergangstypen wie in der history API definiert, mit Ausnahme von "start_page"
anstelle von "auto_toplevel"
(aus Gründen der Abwärtskompatibilität).
Enum
"auto_bookmark"
"auto_subframe"
"manual_subframe"
"start_page"
"form_submit"
"keyword_generated"
Methoden
getAllFrames()
chrome.webNavigation.getAllFrames(
details: object,
callback?: function,
)
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.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(details?: object[]) => void
-
Details
Objekt[] optional
Eine Liste von Frames im angegebenen Tab; null, wenn die angegebene Tab-ID ungültig ist.
-
documentId
String
Chrome 106 oder höherEine UUID des geladenen Dokuments.
-
documentLifecycleChrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
errorOccurred
boolean
True, wenn die letzte Navigation in diesem Frame durch einen Fehler unterbrochen wurde, d.h. das Ereignis onErrorOccurred ausgelöst wurde.
-
frameId
Zahl
Die ID des Frames. 0 gibt an, dass dies der Hauptframe ist; ein positiver Wert gibt die ID eines Subframes an.
-
frameTypeChrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
parentDocumentId
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
parentFrameId
Zahl
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.
-
url
String
Die URL, die derzeit mit diesem Frame verknüpft ist.
-
-
Rückgabe
-
Promise<object[] | undefined>
Chrome 93 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
getFrame()
chrome.webNavigation.getFrame(
details: object,
callback?: function,
)
Ruft Informationen über den angegebenen Frame ab. Ein Frame bezieht sich auf einen <iframe> oder <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 oder höherDie UUID des Dokuments. Wenn „frameId“ und/oder „tabId“ angegeben sind, werden sie validiert, damit sie mit dem Dokument übereinstimmen, das mit der angegebenen Dokument-ID gefunden wurde.
-
frameId
Nummer optional
Die ID des Frames im angegebenen Tab.
-
processId
Nummer optional
Seit Chrome 49 eingestelltFrames werden jetzt eindeutig über ihre Tab-ID und Frame-ID identifiziert. Die Prozess-ID wird nicht mehr benötigt und daher ignoriert.
Die ID des Prozesses, der den Renderer für diesen Tab ausführt.
-
tabId
Nummer optional
Die ID des Tabs, in dem sich der Frame befindet.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(details?: object) => void
-
Details
Objekt optional
Informationen über den angeforderten Frame, null, wenn die angegebene Frame-ID und/oder die Tab-ID ungültig sind.
-
documentId
String
Chrome 106 oder höherEine UUID des geladenen Dokuments.
-
documentLifecycleChrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
errorOccurred
boolean
True, wenn die letzte Navigation in diesem Frame durch einen Fehler unterbrochen wurde, d.h. das Ereignis onErrorOccurred ausgelöst wurde.
-
frameTypeChrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
parentDocumentId
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
parentFrameId
Zahl
Die ID des übergeordneten Frames oder
-1
, wenn dies der Hauptframe ist. -
url
String
Die aktuell mit diesem Frame verknüpfte URL, wenn der durch die FrameId identifizierte Frame an einem Punkt auf dem jeweiligen Tab vorhanden war. Die Tatsache, dass eine URL mit einer bestimmten FrameId verknüpft ist, bedeutet nicht, dass der entsprechende Frame noch existiert.
-
-
Rückgabe
-
Promise<object | undefined>
Chrome 93 und höherPromise-Objekte werden nur für Manifest V3 und höher unterstützt. Andere Plattformen müssen Callbacks verwenden.
Veranstaltungen
onBeforeNavigate
chrome.webNavigation.onBeforeNavigate.addListener(
callback: function,
filters?: object,
)
Wird ausgelöst, wenn eine Navigation erfolgt
Parameter
-
Funktion
Der Parameter
callback
sieht so aus:(details: object) => void
-
Objekt
-
Chrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
Zahl
0 gibt an, dass die Navigation im Fenster mit dem Tabinhalt erfolgt; ein positiver Wert gibt die Navigation in einem Subframe an. Frame-IDs sind für einen bestimmten Tab und Prozess eindeutig.
-
Chrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
Zahl
Die ID des übergeordneten Frames oder
-1
, wenn dies der Hauptframe ist. -
Zahl
Seit Chrome 50 eingestelltDie ProcessId ist für dieses Ereignis nicht mehr festgelegt, da der Prozess, der das resultierende Dokument rendert, erst bei onCommit bekannt ist.
Der Wert -1.
-
Zahl
Die ID des Tabs, in dem die Navigation stattfinden wird.
-
Zahl
Die Zeit in Millisekunden seit Epoche, zu der der Browser kurz davor war, die Navigation zu starten.
-
String
-
-
-
Objekt optional
-
Bedingungen, die die aufgerufene URL erfüllen muss. Die Felder 'schemes' und 'ports' von UrlFilter werden für dieses Ereignis ignoriert.
-
onCommitted
chrome.webNavigation.onCommitted.addListener(
callback: function,
filters?: object,
)
Wird ausgelöst, wenn für eine Navigation ein Commit durchgeführt wird Das Dokument und die Ressourcen, auf die es verweist, wie Bilder und Subframes, werden möglicherweise noch heruntergeladen, aber mindestens ein Teil des Dokuments wurde vom Server empfangen und der Browser hat beschlossen, zum neuen Dokument zu wechseln.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(details: object) => void
-
Details
Objekt
-
documentId
String
Chrome 106 oder höherEine UUID des geladenen Dokuments.
-
documentLifecycleChrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
frameId
Zahl
0 gibt an, dass die Navigation im Fenster mit dem Tabinhalt erfolgt; ein positiver Wert gibt die Navigation in einem Subframe an. Frame-IDs sind innerhalb eines Tabs eindeutig.
-
frameTypeChrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
parentDocumentId
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
parentFrameId
Zahl
Chrome 74 und höherDie 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, auf dem die Navigation stattfindet.
-
timeStamp
Zahl
Die Zeit, zu der für die Navigation ein Commit durchgeführt wurde, in Millisekunden seit der Epoche.
-
transitionQualifiers
Eine Liste von Übergangsqualifizierern.
-
transitionType
Ursache der Navigation.
-
url
String
-
-
-
Filter
Objekt optional
-
url
Bedingungen, die die aufgerufene URL erfüllen muss. Die Felder 'schemes' und 'ports' von UrlFilter werden für dieses Ereignis ignoriert.
-
onCompleted
chrome.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 oder höherEine UUID des geladenen Dokuments.
-
documentLifecycleChrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
frameId
Zahl
0 gibt an, dass die Navigation im Fenster mit dem Tabinhalt erfolgt; ein positiver Wert gibt die Navigation in einem Subframe an. Frame-IDs sind innerhalb eines Tabs eindeutig.
-
frameTypeChrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
parentDocumentId
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
parentFrameId
Zahl
Chrome 74 und höherDie 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, auf dem die Navigation stattfindet.
-
timeStamp
Zahl
Die Zeit in Millisekunden seit der Epoche, zu der das Dokument fertig geladen wurde.
-
url
String
-
-
-
Filter
Objekt optional
-
url
Bedingungen, die die aufgerufene URL erfüllen muss. Die Felder 'schemes' und 'ports' von UrlFilter werden für dieses Ereignis ignoriert.
-
onCreatedNavigationTarget
chrome.webNavigation.onCreatedNavigationTarget.addListener(
callback: function,
filters?: object,
)
Wird ausgelöst, wenn ein neues Fenster oder ein neuer Tab in einem vorhandenen Fenster zum Hosten einer Navigation erstellt wird
Parameter
-
Funktion
Der Parameter
callback
sieht so aus:(details: object) => void
-
Objekt
-
Zahl
Die ID des Frames mit „sourceTabId“, in dem die Navigation ausgelöst wird. 0 gibt den Hauptframe an.
-
Zahl
Die ID des Prozesses, der den Renderer für den Quell-Frame ausführt.
-
Zahl
Die ID des Tabs, in dem die Navigation ausgelöst wird.
-
Zahl
ID des Tabs, auf dem die URL geöffnet wird
-
Zahl
Die Zeit in Millisekunden seit Epoche, zu der der Browser im Begriff war, eine neue Ansicht zu erstellen.
-
String
Die URL, die in einem neuen Fenster geöffnet werden soll.
-
-
-
Objekt optional
-
Bedingungen, die die aufgerufene URL erfüllen muss. Die Felder 'schemes' und 'ports' von UrlFilter werden für dieses Ereignis ignoriert.
-
onDOMContentLoaded
chrome.webNavigation.onDOMContentLoaded.addListener(
callback: function,
filters?: object,
)
Wird ausgelöst, wenn das DOM der Seite vollständig erstellt ist, aber die referenzierten Ressourcen möglicherweise nicht vollständig geladen werden.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(details: object) => void
-
Details
Objekt
-
documentId
String
Chrome 106 oder höherEine UUID des geladenen Dokuments.
-
documentLifecycleChrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
frameId
Zahl
0 gibt an, dass die Navigation im Fenster mit dem Tabinhalt erfolgt; ein positiver Wert gibt die Navigation in einem Subframe an. Frame-IDs sind innerhalb eines Tabs eindeutig.
-
frameTypeChrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
parentDocumentId
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
parentFrameId
Zahl
Chrome 74 und höherDie 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, auf dem die Navigation stattfindet.
-
timeStamp
Zahl
Die Zeit in Millisekunden seit der Epoche, in der das DOM der Seite vollständig erstellt wurde.
-
url
String
-
-
-
Filter
Objekt optional
-
url
Bedingungen, die die aufgerufene URL erfüllen muss. Die Felder 'schemes' und 'ports' von UrlFilter werden für dieses Ereignis ignoriert.
-
onErrorOccurred
chrome.webNavigation.onErrorOccurred.addListener(
callback: function,
filters?: object,
)
Wird ausgelöst, wenn ein Fehler auftritt und die Navigation abgebrochen wird Das kann passieren, wenn 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 oder höherEine UUID des geladenen Dokuments.
-
documentLifecycleChrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
error
String
Die Fehlerbeschreibung.
-
frameId
Zahl
0 gibt an, dass die Navigation im Fenster mit dem Tabinhalt erfolgt; ein positiver Wert gibt die Navigation in einem Subframe an. Frame-IDs sind innerhalb eines Tabs eindeutig.
-
frameTypeChrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
parentDocumentId
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
parentFrameId
Zahl
Chrome 74 und höherDie ID des übergeordneten Frames oder
-1
, wenn dies der Hauptframe ist. -
processId
Zahl
Seit Chrome 50 eingestelltDie ProcessId ist für dieses Ereignis nicht mehr festgelegt.
Der Wert -1.
-
tabId
Zahl
Die ID des Tabs, auf dem die Navigation stattfindet.
-
timeStamp
Zahl
Die Zeit, zu der der Fehler aufgetreten ist, in Millisekunden seit der Epoche.
-
url
String
-
-
-
Filter
Objekt optional
-
url
Bedingungen, die die aufgerufene URL erfüllen muss. Die Felder 'schemes' und 'ports' von UrlFilter werden für dieses Ereignis ignoriert.
-
onHistoryStateUpdated
chrome.webNavigation.onHistoryStateUpdated.addListener(
callback: function,
filters?: object,
)
Wird ausgelöst, wenn der Verlauf des Frames auf eine neue URL aktualisiert wurde. Bei allen zukünftigen Ereignissen für diesen Frame wird die aktualisierte URL verwendet.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(details: object) => void
-
Details
Objekt
-
documentId
String
Chrome 106 oder höherEine UUID des geladenen Dokuments.
-
documentLifecycleChrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
frameId
Zahl
0 gibt an, dass die Navigation im Fenster mit dem Tabinhalt erfolgt; ein positiver Wert gibt die Navigation in einem Subframe an. Frame-IDs sind innerhalb eines Tabs eindeutig.
-
frameTypeChrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
parentDocumentId
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
parentFrameId
Zahl
Chrome 74 und höherDie 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, auf dem die Navigation stattfindet.
-
timeStamp
Zahl
Die Zeit, zu der für die Navigation ein Commit durchgeführt wurde, in Millisekunden seit der Epoche.
-
transitionQualifiers
Eine Liste von Übergangsqualifizierern.
-
transitionType
Ursache der Navigation.
-
url
String
-
-
-
Filter
Objekt optional
-
url
Bedingungen, die die aufgerufene URL erfüllen muss. Die Felder 'schemes' und 'ports' von UrlFilter werden für dieses Ereignis ignoriert.
-
onReferenceFragmentUpdated
chrome.webNavigation.onReferenceFragmentUpdated.addListener(
callback: function,
filters?: object,
)
Wird ausgelöst, wenn das Referenzfragment eines Frames aktualisiert wurde Bei allen zukünftigen Ereignissen für diesen Frame wird die aktualisierte URL verwendet.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(details: object) => void
-
Details
Objekt
-
documentId
String
Chrome 106 oder höherEine UUID des geladenen Dokuments.
-
documentLifecycleChrome 106 oder höher
Der Lebenszyklus des Dokuments.
-
frameId
Zahl
0 gibt an, dass die Navigation im Fenster mit dem Tabinhalt erfolgt; ein positiver Wert gibt die Navigation in einem Subframe an. Frame-IDs sind innerhalb eines Tabs eindeutig.
-
frameTypeChrome 106 oder höher
Der Frame-Typ, in dem die Navigation aufgetreten ist.
-
parentDocumentId
String optional
Chrome 106 oder höherEine UUID des übergeordneten Dokuments, das diesem Frame gehört. Dieser Parameter wird nicht festgelegt, wenn kein übergeordnetes Element vorhanden ist.
-
parentFrameId
Zahl
Chrome 74 und höherDie 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, auf dem die Navigation stattfindet.
-
timeStamp
Zahl
Die Zeit, zu der für die Navigation ein Commit durchgeführt wurde, in Millisekunden seit der Epoche.
-
transitionQualifiers
Eine Liste von Übergangsqualifizierern.
-
transitionType
Ursache der Navigation.
-
url
String
-
-
-
Filter
Objekt optional
-
url
Bedingungen, die die aufgerufene URL erfüllen muss. Die Felder 'schemes' und 'ports' von UrlFilter werden für dieses Ereignis ignoriert.
-
onTabReplaced
chrome.webNavigation.onTabReplaced.addListener(
callback: function,
)
Wird ausgelöst, wenn der Inhalt des Tabs durch einen anderen Tab ersetzt wird, der normalerweise zuvor vorab gerendert wurde
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(details: object) => void
-
Details
Objekt
-
replacedTabId
Zahl
Die ID des Tabs, der ersetzt wurde.
-
tabId
Zahl
Die ID des Tabs, der den alten ersetzt hat.
-
timeStamp
Zahl
Die Zeit in Millisekunden seit der Epoche, zu der der Austausch stattfand.
-
-