Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/04/2013, 10:44
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 9 meses
Puntos: 1567
Respuesta: mostrar tiempo transcurrido de audio

Así
Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <meta charset="utf-8" />
  4. <title>Audio multiple</title>
  5. <style type="text/css">
  6. /*<![CDATA[*/
  7. button{
  8. box-shadow: 1px 1px 0px #383838;
  9. margin: 10px;
  10. }
  11. button:hover{
  12. background: lime;
  13. box-shadow: 1px 1px 0px #000;
  14. }
  15. /*]]>*/
  16. <script type="text/javascript">
  17. //<![CDATA[
  18. var audio,ta,fin,tiempo;
  19. function rep(elaudio){
  20. audio=document.getElementById(elaudio);
  21. audio.load();
  22. audio.play();
  23. // ejecutamos con setInterval cada 1 seg la función verifica_fin()
  24. var fin=window.setInterval(function(){
  25.     verifica_fin();
  26.     },1000);
  27. }
  28.  
  29. function verifica_fin(){
  30. if(audio.ended){// cuando finaliza ó está en pausa.... detenemos el setInterval
  31. clearInterval(fin);
  32. }else{
  33. ta = Math.round(audio.currentTime); // recuperamos el tiempo actual de reproducción y lo redondeamos a un entero
  34. var segs = ta.toString(); // convertimos el tiempo actual a una cadena para poder formatearlo en hh:mm:ss
  35. document.getElementById('tiempox').innerHTML = segs.pasar_a_HHMMSS(); // mandamos el tiempo actual a un div en pantalla
  36. }
  37. }
  38. // convertir segundos a horas:minutos:segundos
  39. String.prototype.pasar_a_HHMMSS = function () {
  40.    var num_segs    = parseInt(this);
  41.    var horas   = Math.floor(num_segs / 3600);
  42.    var minutos = Math.floor((num_segs - (horas * 3600)) / 60);
  43.    var segundos = num_segs - (horas * 3600) - (minutos * 60);
  44.  
  45.    if (horas   < 10) {horas   = "0"+horas;}
  46.    if (minutos < 10) {minutos = "0"+minutos;}
  47.    if (segundos < 10) {segundos = "0"+segundos;}
  48.    var tiempo    = horas+':'+minutos+':'+segundos;
  49.    return tiempo;
  50. }
  51.  
  52. //]]>
  53. </head>
  54. <audio preload="auto" id="sonido1" controls>
  55. <source src="musica/you_dont_bring_me_flowers.mp3" type="audio/mp3"/>
  56. <source src="musica/you_dont_bring_me_flowers.ogg" type="audio/ogg"/>
  57. <p>
  58. <button onclick="rep('sonido1');">Reproducir 1</button>
  59. <div id="tiempox">
  60.    
  61. </div>
  62. </body>
  63. </html>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.