webNavigation.onReferenceFragmentUpdated
Dieses Ereignis wird ausgelöst, wenn der Fragment-Bezeichner einer Seite geändert wird. Wenn eine Seite zum Beispiel 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 Rahmen verwenden die aktualisierte URL.
Syntax
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 zu diesem Ereignis hinzu.
removeListener(listener)
-
Stoppt das Lauschen auf dieses Ereignis. Das Argument
listener
ist der zu entfernende Listener. hasListener(listener)
-
Überprüft, ob
listener
für dieses Ereignis registriert ist. Gibttrue
zurück, wenn es lauscht, andernfallsfalse
.
addListener-Syntax
Parameter
listener
-
Die Funktion, die aufgerufen wird, wenn dieses Ereignis auftritt. Der Funktion wird dieses Argument übergeben:
filter
Optional-
object
. Ein Objekt, das eine einzelne Eigenschafturl
enthält, die einArray
vonevents.UrlFilter
Objekten ist. Wenn Sie diesen Parameter einschließen, wird das Ereignis nur für Übergänge zu URLs ausgelöst, die mit mindestens einemUrlFilter
im Array übereinstimmen. 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 gegebene Rahmen navigieren wird. processId
Optional Veraltet-
integer
. Dieser Wert wird in modernen Browsern nicht mehr gesetzt. Wenn er gesetzt war, stellte er die ID des Prozesses dar, der den Renderer für diesen Tab ausführte. frameId
-
integer
. Der Rahmen, in dem die Navigation stattfinden wird.0
bedeutet, dass die Navigation im Haupt-Browsing-Kontext des Tabs stattfindet, nicht in einem verschachtelten<iframe>
. Ein positiver Wert gibt an, dass die Navigation in einem verschachtelten iframe stattfindet. Rahmen-IDs sind für einen gegebenen Tab und Prozess einzigartig. timeStamp
-
number
. Der Zeitpunkt, zu dem der Fragment-Bezeichner 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
vontransitionQualifier
. Zusätzliche Informationen zur Navigation: zum Beispiel, ob es eine Server- oder Client-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.
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 ist abgeleitet von web_navigation.json
im Chromium-Code.