Tengo una galería de géneros con 10 o más miniaturas que representan una canción. Para controlar la reproducción de cada uno, he configurado un botón de reproducción para que se desvanezca a través de jQuery. Después de investigar en el Centro de desarrollo de Apple, encontré algunos JavaScript nativos para controlar el audio. Funciona muy bien, pero está escrito para el control de un objeto a la vez. Lo que me gustaría hacer es volver a escribirlo como una función que controla dinámicamente la reproducción/pausa de la miniatura que está seleccionando.Control dinámico de audio HTML5 con JavaScript
A continuación se muestra el código que encontré .. funciona, pero sería un código innecesario escribirlo 10 veces.
Gracias por su ayuda y consejo, siempre!
HTML:
<div class="thumbnail" id="paparazzixxx">
<a href="javascript:playPause();">
<img id="play" src="../images/icons/35.png" />
</a>
<audio id="paparazzi">
<source src="../audio/fernando_garibay_paparazzisnlmix.ogg" type="audio/ogg" />
<source src="../audio/fernando_garibay_paparazzisnlmix.mp3" type="audio/mpeg" />
Your browser does not support HTML5 audio.
</audio>
</div>
JavaScript:
<script type="text/javascript">
function playPause() {
var song = document.getElementsByTagName('audio')[0];
if (song.paused)
song.play();
else
song.pause();
}
</script>
@jessegavin gracias por la respuesta completa. Agradezco el tiempo que demoró explicando la ventaja que tiene jQuery en esta aplicación. Implementé tu código en mi página, pero no está reproduciendo el archivo de audio. ¿Alguna idea? ¿Funciona para ti? – technopeasant
¿Es el html en su página exactamente como el html en su ejemplo? ¿Una etiqueta de audio sigue una etiqueta de enlace en todos los casos? - ¿Obtiene algún error de JavaScript específico? – jessegavin
@jessegavin El HTML se copia exactamente, y sí, la etiqueta de audio sigue un enlace en todos los casos (es compatible con .next). Sin errores específicos, solo audio. Aquí hay un jsFiddle para demostrar: http://jsfiddle.net/66FwR/ – technopeasant