NavigationPrecommitController: redirect() Methode
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Die redirect() Methode der NavigationPrecommitController Schnittstelle leitet den Browser zu einer angegebenen URL um und spezifiziert das Verhalten der Historie sowie gewünschte Zustandsinformationen.
Syntax
redirect(url, options)
Parameter
url-
Die URL, zu der umgeleitet werden soll.
optionsOptional-
Ein Optionsobjekt, dessen Eigenschaften Folgendes beinhalten können:
stateOptional-
Enthält beliebige Zustandsinformationen, die Sie zusammen mit der Navigation übergeben möchten; zum Beispiel für Protokollierungs- oder Verfolgungszwecke. Dies kann durch jeden Werttyp dargestellt werden. Der Zustand der Navigation kann anschließend über die
NavigationHistoryEntry.getState()Methode des resultierenden Historieneintrags abgerufen werden. historyOptional-
Ein enumerierter Wert, der angibt, wie dieser Redirect zur Navigation-Historie hinzugefügt werden soll. Er kann einen der folgenden Werte annehmen:
auto-
Der Standardwert, der es dem Browser überlässt, wie damit umgegangen wird:
- Wenn die ursprüngliche Navigation durch einen Aufruf von
Navigation.navigate()erfolgt ist, wird der Wert verwendet, der in dernavigate()Aufrufoptionhistoryangegeben wurde. - Andernfalls wird normalerweise
pushverwendet, aber es wirdreplace, wenn der Redirect auf dieselbe URL verweist wie die vor der Navigation.
- Wenn die ursprüngliche Navigation durch einen Aufruf von
push-
Fügt einen neuen
NavigationHistoryEntryzur Navigation-Historie hinzu und löscht jegliche verfügbare Vorwärtsnavigation (d.h. wenn der Benutzer zuvor zu anderen Orten navigiert und dann die Zurück-Taste verwendet hat, um durch die Historie zur Navigation zurückzukehren, die die Umleitung verursacht hat). replace-
Ersetzt den
Navigation.currentEntrydurch den resultierenden neuenNavigationHistoryEntry.
Hinweis:
Die redirect() Methode kann das Historieverhalten zwischen auto, push und replace umwandeln, aber sie kann keine traverse-Navigation in eine push/replace-Navigation und umgekehrt umwandeln.
Rückgabewert
Keiner (undefined).
Ausnahmen
InvalidStateErrorDOMException-
Wird ausgelöst, wenn:
- Das auslösende
NavigateEventnicht abgefangen wurde. - Der
NavigateEvent.navigationTypenichtpushoderreplaceist.
- Das auslösende
SyntaxErrorDOMException-
Wird ausgelöst, wenn die angegebene
urlungültig ist. SecurityErrorDOMException-
Wird ausgelöst, wenn das aktuelle Dokument nicht in der Lage ist, seine URL auf die angegebene Umleitungs-
urlumzuschreiben.
Beispiele
Siehe die Hauptseite NavigationPrecommitController für ein Beispiel.
Spezifikationen
| Spezifikation |
|---|
| HTML> # dom-navigationprecommitcontroller-redirect> |