2012-02-19 23 views
27

¿Cómo puedo saber cuándo se terminó de reproducir un elemento de audio HTML5?¿Cómo puedo saber cuándo se terminó de reproducir un elemento de audio HTML5?

¿Se lanza eventos que puedo escuchar o algo similar? Necesito reaccionar cuando termina una pista de audio.

Gracias!

+0

duplicado posible de [¿Hay un evento onComplete para HTML5 de audio?] (Http://stackoverflow.com/questions/5092266/is-there-an-oncomplete-event -for-html5-audio) –

Respuesta

27

De acuerdo con W3Schools, puede usar el evento onended para detectar si el audio ha terminado de reproducirse.

En jQuery:

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

Para una demostración, véase: http://jsfiddle.net/9PCEf/2/

+13

... relájate, todavía no podía aceptar la respuesta porque aún no había transcurrido el tiempo suficiente. Odio cuando la gente deja comentarios como este. – fancy

+0

nah es solo un recordatorio. Lo siento si te ofende. – mauris

+0

¡Wow @thephpdeveloper, estás realmente sediento por el tic! –

54

El uso de HTML:

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

uso de JavaScript:

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

Usando jQuery:

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

Leer más sobre Media events on MDN

Cuestiones relacionadas