我在我的網站上設置了一些HTML音頻,幾秒鐘後我已經設置了自動播放功能,但聲音似乎加載了兩次?一個開始直接玩另一個,儘管一個是鬼,並且看不到一個玩家。Javascript HTML5音頻 - 如果已經播放,不要播放聲音?
我怎麼能告訴javascript不開始播放聲音,如果已經有聲音播放?
<audio controls="controls" onloadeddata="var audioPlayer = this; setTimeout(function() { audioPlayer.play(); }, 2000)" }>
<source src="http://www.alanis50.com/Music/music.mp3" type="audio/mp3"/>
<source src="http://www.alanis50.com/Music/music.ogg" type="audio/ogg"/>
</audio>
上述問題已經但是解決了我想添加一個Flash後備此音頻的Internet Explorer等補充說:
<div id ="audio">
<script>var readingMusic = false; </script>
<audio controls="controls" loop="loop" onloadeddata="var audioPlayer = this; if (!readingMusic){readingMusic = true;setTimeout(function() { audioPlayer.play(); }, 2000)}" }>
<source src="http://www.alanis50.com/Music/music.mp3" type="audio/mp3"/>
<source src="http://www.alanis50.com/Music/music.ogg" type="audio/ogg"/>
<embed type="application/x-shockwave-flash" flashvars="audioUrl=http://www.alanis50.com/Music/music.mp3&autoPlay=true" src="http://www.google.com/reader/ui/3523697345-audio-player.swf" width="400" height="27" quality="best" wmode="transparent"></embed>
</audio>
</div>
<div id="audiohide">
<audio controls="controls" loop="loop" onloadeddata="var audioPlayer = this; if (!readingMusic){readingMusic = true;setTimeout(function() { audioPlayer.play(); }, 2000)}" }>
<source src="http://www.alanis50.com/Music/music.mp3" type="audio/mp3"/>
<source src="http://www.alanis50.com/Music/music.ogg" type="audio/ogg"/>
<embed type="application/x-shockwave-flash" flashvars="audioUrl=http://www.alanis50.com/Music/music.mp3&autoPlay=true" src="http://www.google.com/reader/ui/3523697345-audio-player.swf" width="400" height="27" quality="best" wmode="transparent"></embed>
</audio>
</div>
但現在閃存音頻表現如何以前的音頻做顯然JavaScript不影響Flash的嵌入?
您在哪個瀏覽器中發出此問題?這個音頻標籤是您網頁上唯一的自動播放功能嗎? – icanhazbroccoli
有趣的是,我測試過的所有瀏覽器Firefox/chrome/IE我不確定是否有更深層次的問題,例如,腳本在某處加載兩次等等。但我想知道如果我可以設置一個音頻函數,如果它已經在播放,就不開始播放了?我不介意承認我是JavaScript的新手! :( – user2287658
你能創建一個[jsfiddle](http://jsfiddle.net/)這個問題嗎? – Jashwant