Audio-не работает currenTime в Opera в начале
Здраствуете, у меня возникла проблема с <audio>.
При событии "timeupdate" я получаю currenTime и все отлично работает , но в опере -если нажать на кнопку которая загружает трек , то текущую позичию всегда показывает 0 , а если потом нажать на паузу - то начинает все считать нормально. Подскажите пожалусто в чем проблема. var audio = new Audio(); function load_audio(track_id){ var canPlayOgg = !!audio.canPlayType && audio.canPlayType('audio/ogg; codecs="vorbis"') != ""; if (canPlayOgg){ audio.setAttribute("src",track_id+".ogg"); audio.setAttribute("type",'audio/ogg; codecs="vorbis"'); audio.load(); } else{ audio.setAttribute("src",track_id+".mp3"); audio.setAttribute("type",'audio/mpeg; codecs="mp3"'); audio.load(); } audio.play(); } function audio_forward(){ audio.currentTime+=20.0; } function initalize_audio(){ var duration = document.getElementById('duration'); audio.addEventListener("durationchange", function() { duration.innerHTML = audio.duration+' sec / '; }, false); var current = document.getElementById('current'); audio.addEventListener("timeupdate", function() { current.innerHTML = audio.currentTime+' sec / '; }, false); var mute = document.getElementById('mute'); mute.addEventListener('click', function(){ if (audio.muted) { audio.muted=false; } else { audio.muted=true; } }); var play = document.getElementById('play'); play.addEventListener('click', function(){ audio.play(); }); var pause = document.getElementById('pause'); pause.addEventListener('click', function(){ audio.pause(); }, false); }; <!DOCTYPE html> <html> <head> <title>testplayer</title> <script src="player.js"></script> </head> <body> <div> <input id="play" type="button" value="Play" /> <input id="pause" type="button" value="Pause" /> <input id="mute" type="button" value="mute" /><br> <span id="current"> </span><br> <span id="duration"> </span><br> </div> <input id="track1" type="button" value="test1" onclick="load_audio(\'test\');"/> <input id="track2" type="button" value="test2" onclick="load_audio(\'test2\');"/> <input id="forward" type="button" value="+20sec" onclick="audio_forward();"/> <script type="text/javascript"> initalize_audio(); </script> </body> </html> пример |
уже разобрался))
оказывается надо просто было вызывать audio.play() при событии loadeddata. |
Часовой пояс GMT +3, время: 23:46. |