Quelle est l'api javascript pour vérifier si un élément audio html5 est en cours de lecture ?
Comme il n'y a pas d'arrêt, c'est une solution propre.
Quelle est l'api javascript pour vérifier si un élément audio html5 est en cours de lecture ?
function isPlaying(audelem) { return !audelem.paused; }
La balise Audio possède un paused
propriété. S'il n'est pas en pause, alors il est en cours de lecture.
C'est une mauvaise réponse. Je suis en train de travailler avec, et avant le premier démarrage, .paused est faux.
Vous pouvez vérifier la durée. Il est en cours de lecture si la durée est supérieure à 0 seconde et s'il n'est pas en pause.
var myAudio = document.getElementById('myAudioID');
if (myAudio.duration > 0 && !myAudio.paused) {
//Its playing...do your job
} else {
//Not playing...maybe paused, stopped or never played.
}
Bien que je sois vraiment en retard sur ce sujet, j'utilise cette mise en œuvre pour savoir si le son est joué :
service.currentAudio = new Audio();
var isPlaying = function () {
return service.currentAudio
&& service.currentAudio.currentTime > 0
&& !service.currentAudio.paused
&& !service.currentAudio.ended
&& service.currentAudio.readyState > 2;
}
Je pense que la plupart des indicateurs de l'élément audio sont évidents, à l'exception de l'état prêt que vous pouvez lire ici : MDN HTMLMediaElement.readyState .
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
0 votes
Voir aussi : stackoverflow.com/questions/6877403/