我想通过html5音频播放器制作像winamp这样的播放器。但是当我点击一个javascript按钮(用于onclick事件的'play'按钮来调用函数来改变音频源并播放音乐)时,有时候源不会及时加载。 我的代码是:
<script type="text/javascript">
function play(src){
document.getElementById('new').currentSrc=src+".ogg";
document.getElementById('new').play();
}
</script>
<audio id="new">
<source src="m.ogg" type="audio/ogg" />
Your browser does not support HTML5 audio. Please upgrade your browser.
</audio>
<button onclick="play('source');">Play next song</button>
另一个问题是始终有一个初始src需要保留(如m.ogg)。否则新源不会加载。但如果我改变'new'音频播放器的innerHTML,那么这个问题就不会发生,但加载速度有点慢。
那么最佳做法是什么?更改当前来源或更改音频播放器的innerHTML?
-Thanks。
答案 0 :(得分:1)
尝试拨打
document.getElementById('new').load();
在调用play()之前。
只要有足够的数据缓冲,IIRC就会尝试播放。