webNavigation.onReferenceFragmentUpdated

Wird ausgelöst, wenn der Fragment-Identifikator einer Seite geändert wird. Beispielsweise, wenn eine Seite ein Inhaltsverzeichnis mit Fragmenten implementiert und der Benutzer auf einen Eintrag im Inhaltsverzeichnis klickt, wird dieses Ereignis ausgelöst. Alle zukünftigen Ereignisse für diesen Frame verwenden die aktualisierte URL.

Syntax

js
browser.webNavigation.onReferenceFragmentUpdated.addListener(
  listener,                   // function
  filter                      // optional object
)
browser.webNavigation.onReferenceFragmentUpdated.removeListener(listener)
browser.webNavigation.onReferenceFragmentUpdated.hasListener(listener)

Ereignisse haben drei Funktionen:

addListener(listener)

Fügt einen Listener für dieses Ereignis hinzu.

removeListener(listener)

Hört auf, auf dieses Ereignis zu lauschen. Das listener-Argument ist der Listener, der entfernt werden soll.

hasListener(listener)

Überprüft, ob listener für dieses Ereignis registriert ist. Gibt true zurück, wenn es zuhört, andernfalls false.

addListener-Syntax

Parameter

listener

Die Funktion, die aufgerufen wird, wenn dieses Ereignis eintritt. Der Funktion wird dieses Argument übergeben:

details

object. Details über das Navigationsevent. Siehe den Abschnitt details für weitere Informationen.

filter Optional

object. Ein Objekt mit einer einzigen Eigenschaft url, die ein Array von events.UrlFilter Objekten ist. Wenn Sie diesen Parameter einfügen, wird das Ereignis nur für Übergänge zu URLs ausgelöst, die mindestens einem UrlFilter im Array entsprechen. Wenn Sie diesen Parameter weglassen, wird das Ereignis für alle Übergänge ausgelöst.

Zusätzliche Objekte

details

tabId

integer. Die ID des Tabs, in dem die Navigation stattfinden wird.

url

string. Die URL, zu der der angegebene Frame navigieren wird.

processId Optional Veraltet

integer. Dieser Wert wird in modernen Browsern nicht gesetzt. Wenn er gesetzt wurde, repräsentierte er die ID des Prozesses, der den Renderer für diesen Tab ausführte.

frameId

integer. Frame, in dem die Navigation stattfindet. 0 gibt an, dass die Navigation im obersten Browsing-Kontext des Tabs, nicht in einem verschachtelten <iframe>, erfolgt. Ein positiver Wert gibt an, dass die Navigation in einem verschachtelten iframe erfolgt. Frame-IDs sind für einen bestimmten Tab und Prozess eindeutig.

timeStamp

number. Der Zeitpunkt, zu dem der Fragment-Identifikator der Seite geändert wurde, in Millisekunden seit der Epoche.

transitionType

transitionType. Der Grund für die Navigation: zum Beispiel "link", wenn der Benutzer auf einen Link geklickt hat.

transitionQualifiers

Array von transitionQualifier. Zusätzliche Informationen zur Navigation: zum Beispiel, ob es eine server- oder clientseitige Weiterleitung gab.

Browser-Kompatibilität

Beispiele

Protokolliert die Ziel-URLs und zusätzliche Übergangsinformationen für onReferenceFragmentUpdated, wenn der Hostname der Ziel-URL "example.com" enthält oder mit "developer" beginnt.

js
const filter = {
  url: [{ hostContains: "example.com" }, { hostPrefix: "developer" }],
};

function logOnReferenceFragmentUpdated(details) {
  console.log(`onReferenceFragmentUpdated: ${details.url}`);
  console.log(`Transition type: ${details.transitionType}`);
  console.log(`Transition qualifiers: ${details.transitionQualifiers}`);
}

browser.webNavigation.onReferenceFragmentUpdated.addListener(
  logOnReferenceFragmentUpdated,
  filter,
);

Hinweis: Diese API basiert auf Chromiums chrome.webNavigation API. Diese Dokumentation stammt von web_navigation.json im Chromium-Code.