webNavigation.onBeforeNavigate

Wird ausgelöst, wenn der Browser dabei ist, ein Navigationsereignis zu starten.

Syntax

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

Ereignisse haben drei Funktionen:

addListener(listener)

Fügt diesem Ereignis einen Listener hinzu.

removeListener(listener)

Hört auf, diesem Ereignis zu lauschen. Das Argument listener ist der zu entfernende Listener.

hasListener(listener)

Überprüft, ob listener für dieses Ereignis registriert ist. Gibt true zurück, wenn es lauscht, 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 Navigationsereignis. Siehe den details Abschnitt für weitere Informationen.

filter Optional

object. Ein Objekt, das eine einzelne Eigenschaft url enthält, die ein Array von events.UrlFilter Objekten ist. Wenn Sie diesen Parameter einschließen, 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 gleich stattfinden wird.

url

string. Die URL, zu der der gegebene Rahmen navigieren wird.

processId Optional Veraltet

integer. Dieser Wert wird in modernen Browsern nicht gesetzt. Wenn er gesetzt war, stellte er die ID des Prozesses dar, der das Renderer für diesen Tab ausführte.

frameId

integer. Der Rahmen, in dem die Navigation gleich stattfinden wird. 0 bedeutet, dass die Navigation im Hauptbrowsing-Kontext des Tabs und nicht in einem verschachtelten <iframe> stattfindet. Ein positiver Wert bedeutet, dass die Navigation in einem verschachtelten iframe stattfindet. Rahmen-IDs sind eindeutig für einen bestimmten Tab und Prozess.

parentFrameId

integer. ID des übergeordneten Rahmens dieses Rahmens. Wird auf -1 gesetzt, wenn dies ein oberster Rahmen ist.

timeStamp

number. Die Zeit, zu der der Browser die Navigation gleich starten wird, in Millisekunden seit der Epoche.

Browser-Kompatibilität

BCD tables only load in the browser

Beispiele

Protokolliert die Ziel-URLs für onBeforeNavigate, wenn der Hostname des Ziels "example.com" enthält oder mit "developer" beginnt.

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

function logOnBefore(details) {
  console.log(`onBeforeNavigate to: ${details.url}`);
}

browser.webNavigation.onBeforeNavigate.addListener(logOnBefore, filter);

Hinweis: Diese API basiert auf Chromium's chrome.webNavigation API. Diese Dokumentation wurde abgeleitet von web_navigation.json im Chromium-Code.