NavigateEvent: scroll() Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Die scroll() Methode der NavigateEvent-Schnittstelle kann aufgerufen werden, um das durch den Browser gesteuerte Scrollverhalten manuell auszulösen, das als Reaktion auf die Navigation auftritt, falls Sie möchten, dass dies geschieht, bevor die Navigation abgeschlossen ist.
Syntax
scroll()
Parameter
Keine.
Rückgabewert
Keiner (undefined).
Ausnahmen
InvalidStateErrorDOMException-
Wird ausgelöst, wenn das aktuelle
Documentnoch nicht aktiv ist oder wenn die Navigation abgebrochen wurde. SecurityErrorDOMException-
Wird ausgelöst, wenn das Ereignis durch einen
dispatchEvent()-Aufruf und nicht durch den User Agent gesendet wurde.
Beispiele
>Behandlung des Scrollens mit scroll()
In diesem Beispiel zur Abfangung einer Navigation beginnt die handler()-Funktion mit dem Abrufen und Rendern einiger Artikelinhalte, um anschließend einige sekundäre Inhalte abzurufen und zu rendern. Es ist sinnvoll, die Seite zu den Hauptartikel-Inhalten zu scrollen, sobald diese verfügbar sind, damit der Benutzer damit interagieren kann, anstatt zu warten, bis auch die sekundären Inhalte gerendert sind. Um dies zu erreichen, haben wir zwischen den beiden einen scroll()-Aufruf hinzugefügt.
navigation.addEventListener("navigate", (event) => {
if (shouldNotIntercept(navigateEvent)) {
return;
}
const url = new URL(event.destination.url);
if (url.pathname.startsWith("/articles/")) {
event.intercept({
async handler() {
const articleContent = await getArticleContent(url.pathname);
renderArticlePage(articleContent);
event.scroll();
const secondaryContent = await getSecondaryContent(url.pathname);
addSecondaryContent(secondaryContent);
},
});
}
});
Spezifikationen
| Specification |
|---|
| HTML> # dom-navigateevent-scroll-dev> |