2012-03-06 32 views
9

Estoy tratando de usar jQuery para controlar un elemento de audio HTML5, pero no soy genial con JS. Lo que quiero es que el reproductor comience a cargar la página, lo que hice, pero cuando se hace clic en el botón Reproducir, quiero verificar si el audio se está reproduciendo o no. Si se está reproduciendo al hacer clic: detener el audio. Si no se está reproduciendo al hacer clic: reproduce el audio.Uso de jQuery para controlar HTML5 <audio> elemento

Si pudiera ayudar, sería muy apreciado.

Fuente aquí: http://www.julake.co.uk/media/loader.php?page=contact

Muchas gracias,

Respuesta

12

se debe utilizar un único botón de reproducción/pausa alternar en el que es necesario comprobar si se ha detenido el audio o no

var audioplayer = document.getElementById("audio-player"); 
$("#play-bt").click(function(){ 
    if (audioplayer.paused) { 
     audioplayer.play(); 
    } 
    else { 
     audioplayer.pause(); 
    } 
    $(this).toggleClass('pause'); /* style your toggle button according to 
             the current state */ 
}) 
+0

Muchas gracias, eso es lo que estaba buscando. Eres brillante! – futureslay

+0

¿Cómo se usa jQuery? Está allí para ser usado, ¿por qué la gente no puede usarlo? – Banny

2
var audio = new Audio("http://www.w3schools.com/html5/song.ogg"); //or you can get it with getelementbyid 

audio.addEventListener('canplay', function() { 
//code, when audio can play 
audio.play(); //this function will start the music 
}) 

con audio.play() funcionan puede iniciarlo. No es necesario jQuery

+0

¿sabes cómo reproducir otra canción cuando termina? – RicardoE

1

Si desea utilizar un selector de jQuery o tienen un selector de jquery ya, puede agregar [0] para obtener el elemento dom nativo.

Así que un ejemplo que realmente usa jquery sería.

$('audio')[0].pause()

Cuestiones relacionadas