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.

js
addEventListener("loadend", (event) => {});

onloadend = (event) => {};

Ereignistyp

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.

js
// 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

Siehe auch