2011-02-10 27 views
9

我有一個使用HTML5 <audio>標記設置的ogg vorbis文件。
該文件由Firefox(3.6.13)請求兩次,但使用「自動播放」選項播放所請求文件。
當我暫停時,其中一個曲目停止,但其他曲目繼續。當我再次按播放時,兩個音軌都會播放,儘管現在不同步。當使用'自動播放'時,Firefox會同時加載和播放相同的.ogv文件

所有的作品與webkit和歌劇很好。
在沒有「自動播放」的Firefox中,ogg文件被請求兩次,但只有一次播放,並且全部顯示正常。但是我需要這種情況下的「自動播放」功能。

我的HTML:
<audio autoplay controls">
<source src="/media/BetterDays.ogv" type="audio/ogg; codec=vorbis"></source>
<source src="/media/BetterDays.mp3" type="audio/mpeg"></source>
</audio>

我的jQuery:

if(!!document.createElement('audio').canPlayType) { 
    audio = $('audio').get(0); 
    $(audio).removeAttr("controls"); 
    $(audio).bind('play',function() { 
     $("#playtoggle").addClass('playing'); 
    }).bind('pause ended', function() { 
     $("#playtoggle").removeClass('playing');  
    }); 

    $("#playtoggle").click(function() {  
     if (audio.paused) { audio.play(); } 
     else { audio.pause(); }  
    }); 

我真的很感謝所有幫助一個可以提供。謝謝。

+0

我有同樣的問題。它只發生在Firefox,當我關閉自動播放視頻的問題消失。自發布此消息以來,您在解決此問題方面是否取得了成功? – Bringo 2011-04-22 18:13:20

+0

我剛剛關閉自動播放,並開始使用jquery加載文檔:set audio.play()on $(document).ready – tomek 2011-05-06 21:20:48

回答

2

像這樣做,HTML 5的標籤仍然有些不穩定,但良好的醇」的JavaScript會做的伎倆

<script> 
give your audio tag an id, in my example it will be audiobox 

function play() { 
    document.getElementById('audiobox').play(); 
    } 
    play(); 
</script> 
相關問題