La détection élément HTML5 audio fichier non trouvé erreur
Je suis en train de faire un le navigateur affiche une alerte si un élément audio attribut src points d'un inexistante fichier, mais je n'obtenez pas de réponse, si j'attache de l'évènement "erreur".
Ici un violon avec mon problème et avec ce que j'ai essayé http://jsfiddle.net/Xx2PW/7/
Le code HTML:
<p>Non existent audio files - should return an error
<audio preload="auto">
<source src="http://example.com/non-existant.wav" />
<source src="http://example.com/non-existant.mp3" />
<source src="http://example.com/non-existant.ogg" />
</audio>
</p>
<p>Existing audio file - should just play
<audio preload="auto">
<source src="http://jplayer.org/audio/m4a/Miaow-07-Bubble.m4a" />
</audio>
</p>
Et le JS:
playerMarkup = "<a class=\"player\">Play</a>";
audioTags = $("audio");
audioTags.before(playerMarkup); //insert markup before each audio tag
$(".player").on("click", function () {
currentAudio = $(this).next()[0];
//I've tried catching the error like this - no effect
alert("Trying to play file.");
try {
currentAudio.play();
} catch (e) {
alert("Error playing file!");
}
});
//I've also tried just handling the event error - no effect
audioTags.on("error", function (e) {
alert("Error playing file!");
console.log("Error playing file!");
});
Comment puis-je détecter une erreur de fichier non joué (parce que de ne pas être trouvé) avec JS?
OriginalL'auteur WojtekD | 2014-04-22
Vous devez vous connecter pour publier un commentaire.
Vous avez réellement besoin de se lier à la source de la balise pour l'écoute de l'événement d'erreur lorsque disposés à détecter "fichier introuvable". Jetez un oeil à cette violon.
HTML:
Script:
Il est décrit dans ce MDN article - section de la gestion des erreurs.
Laissez-moi savoir si cela fonctionne pour vous.
Une idée de comment cela à Réagir composant?
Cela a très bien fonctionné pour moi. Cependant, il est un moyen pour déterminer le code d'état http renvoyé par l'appel qui a provoqué l'erreur, ou que l'erreur a été?
OriginalL'auteur Arnaud Leyder
Ce doit traiter les deux cas (par exemple à l'aide de
<audio>
avec<source>
tags ou à l'aide de<audio src="">
).Voir exemple de violon.
c'est ce que l'handleMediaError est pour. L'aide que l'extrait de code va gérer les deux cas.
c'était un commentaire littéral pour les personnes qui pourraient être la lecture de ce et ne réalisant pas quelle est la différence entre les deux approches.
ahh, mon erreur. Poursuivez, monsieur!
OriginalL'auteur idbehold
Arriver audio erreurs
Cité de Comment vérifier si HTML5 audio a atteint les différentes erreurs
OriginalL'auteur Vishnuraj V