2012-02-19 16 views
27

Come posso sapere quando un elemento audio HTML5 ha finito di suonare?Come posso sapere quando un elemento audio HTML5 ha finito di suonare?

Gira eventi che posso ascoltare o qualcosa di simile? Devo reagire quando termina una traccia audio.

Grazie!

+0

Eventuali duplicati di [C'è un evento onComplete per HTML5 audio?] (Http://stackoverflow.com/questions/5092266/is-there-an-oncomplete-event -for-html5-audio) –

risposta

27

In base a W3Schools, è possibile utilizzare l'evento onended per rilevare se l'audio ha terminato la riproduzione.

In jQuery:

$("#player").bind('ended', function(){ 
    // done playing 
    alert("Player stopped"); 
}); 

Per un vedere dimostrazione: http://jsfiddle.net/9PCEf/2/

+13

... rilassati amico, non potevo ancora accettare la risposta perché non era ancora passato abbastanza tempo. Odio quando le persone lasciano commenti come questo. – fancy

+0

nah è solo un promemoria. Mi dispiace se ti offende. – mauris

+0

Wow @thephpdeveloper, hai davvero sete di spunta! –

54

Utilizzando HTML:

<audio id="music" src="blah.mp3" onended="yourFunction()"></audio> 

utilizzando JavaScript:

document.querySelector("#music").addEventListener("ended", yourFunction, false); 

utilizzando jQuery:

$("#music").on("ended", yourFunction); 

Per saperne di più Media events on MDN

Problemi correlati