MediaError: message-Eigenschaft
Die schreibgeschützte Eigenschaft MediaError.message
gibt einen
menschlich lesbaren String zurück, der spezifische Diagnosedetails im Zusammenhang mit dem durch das MediaError
-Objekt beschriebenen Fehler bietet oder einen leeren String (""
), wenn keine Diagnoseinformationen ermittelt oder bereitgestellt werden können.
Wert
Ein String, der eine detaillierte und spezifische Erklärung dessen bietet, was schiefgelaufen ist und möglicherweise wie das Problem behoben werden könnte. Dies ist nicht eine generische Beschreibung des Werts der MediaError.code
-Eigenschaft, sondern geht tiefer in die spezifischen Details dieses bestimmten Fehlers und seiner Umstände. Wenn keine spezifischen Details verfügbar sind, ist dieser String leer.
Beispiele
Dieses Beispiel erstellt ein <audio>
-Element, richtet einen Fehlerbehandler dafür ein und ermöglicht es dem Benutzer, Buttons anzuklicken, um zu wählen, ob eine gültige Audiodatei oder eine fehlende Datei dem src
-Attribut des Elements zugewiesen wird. Der Fehlerbehandler gibt eine Nachricht auf einer Box auf dem Bildschirm aus, die den Fehler beschreibt, einschließlich sowohl des code
als auch der message
.
Nur die relevanten Teile des Codes werden angezeigt; Sie können den vollständigen Quellcode hier sehen.
Das Beispiel erstellt ein <audio>
-Element und lässt den Benutzer entweder eine gültige Musikdatei oder einen Link zu einer nicht existierenden Datei zuweisen. Dies ermöglicht uns, das Verhalten des error
-Ereignisbehandlers zu sehen, der von einem Ereignisbehandler empfangen wird, den wir dem <audio>
-Element selbst hinzufügen.
Der Fehlerbehandler sieht folgendermaßen aus:
audioElement.onerror = () => {
let s = "";
const err = audioElement.error;
switch (err.code) {
case MediaError.MEDIA_ERR_ABORTED:
s += "The user canceled the audio.";
break;
case MediaError.MEDIA_ERR_NETWORK:
s += "A network error occurred while fetching the audio.";
break;
case MediaError.MEDIA_ERR_DECODE:
s += "An error occurred while decoding the audio.";
break;
case MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED:
s +=
"The audio is missing or is in a format not supported by your browser.";
break;
default:
s += "An unknown error occurred.";
break;
}
const message = err.message;
if (message?.length > 0) {
s += ` ${message}`;
}
displayErrorMessage(`<strong>Error ${err.code}:</strong> ${s}<br>`);
};
Er erhält das MediaError
-Objekt, das den Fehler beschreibt, über die error
-Eigenschaft auf dem HTMLAudioElement
, das den Audioplayer darstellt. Das Attribut code
des Fehlers wird überprüft, um eine generische Fehlermeldung anzuzeigen und, falls message
nicht leer ist, wird es angehängt, um zusätzliche Details bereitzustellen. Dann wird der resultierende Text in das Protokoll ausgegeben.
Ergebnis
Sie können dieses Beispiel unten ausprobieren und das Beispiel in Aktion außerhalb dieser Seite hier sehen.
Spezifikationen
Specification |
---|
HTML Standard # dom-mediaerror-message-dev |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
MediaError
: Schnittstelle zur Definition derMediaError.message
-Eigenschaft<audio>
,<video>