XMLHttpRequestUpload: loadend-Ereignis
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Hinweis: Dieses Feature ist verfügbar in Web Workers, außer in Service Workers.
Das loadend
-Ereignis wird ausgelöst, wenn eine Anfrage abgeschlossen ist, unabhängig davon, ob sie erfolgreich (nach load
) oder erfolglos (nach abort
oder error
) war.
Das loadend
-Ereignis wird auch gesendet, wenn die Anfrage unterbrochen wurde (durch einen timeout
, ein abort
oder ein error
). In solchen Fällen beträgt sowohl der loaded
- als auch der total
-Wert des Ereignisses 0.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("loadend", (event) => {});
onloadend = (event) => {};
Ereignistyp
Ein ProgressEvent
, das von Event
erbt.
Ereigniseigenschaften
Zusätzlich zu den unten aufgelisteten Eigenschaften sind Eigenschaften von der übergeordneten Schnittstelle, Event
, verfügbar.
lengthComputable
Nur lesbar-
Ein boolesches Flag, das anzeigt, ob die gesamte zu leistende Arbeit und der bereits geleistete Arbeitsaufwand des zugrunde liegenden Prozesses berechenbar sind. Mit anderen Worten, es zeigt, ob der Fortschritt messbar ist oder nicht.
loaded
Nur lesbar-
Ein 64-Bit-Ganzzahlwert ohne Vorzeichen, der den bereits vom zugrunde liegenden Prozess geleisteten Arbeitsaufwand angibt. Das Verhältnis der erledigten Arbeit kann berechnet werden, indem
total
durch den Wert dieser Eigenschaft geteilt wird. Beim Herunterladen einer Ressource über HTTP zählt dies nur den Body der HTTP-Nachricht und schließt Header und andere Overheads aus. total
Nur lesbar-
Ein 64-Bit-Ganzzahlwert ohne Vorzeichen, der die Gesamtmenge der Arbeit repräsentiert, die der zugrunde liegende Prozess ausführt. Beim Herunterladen einer Ressource über HTTP entspricht dies der
Content-Length
(der Größe des Nachrichtentextes) und schließt Header und andere Overheads aus.
Beispiele
Verwendung des loadend
-Ereignisses
Sie können das loadend
-Ereignis verwenden, um das (erfolgreiche oder nicht) Ende eines Uploads zu erkennen. Für ein komplettes Codebeispiel, das eine Datei hochlädt und eine Fortschrittsanzeige anzeigt, siehe die Hauptseite von XMLHttpRequestUpload
.
// When the upload is finished, we hide the progress bar.
xhr.upload.addEventListener("loadend", (event) => {
progressBar.classList.remove("visible");
if (event.loaded !== 0) {
// Successful termination
log.textContent = "Upload finished.";
}
abortButton.disabled = true;
});
Spezifikationen
Specification |
---|
XMLHttpRequest Standard # event-xhr-loadend |
XMLHttpRequest Standard # handler-xhr-onloadend |
Browser-Kompatibilität
BCD tables only load in the browser