Javascript HTML5 <audio>多个来源

use*_*526 5 javascript audio mp3 ogg

我试图使用javascripts的'getElementByID'将同一首歌插入我的音频播放器的2个不同来源.

HTML:

<audio id="audio">
   <source id="ogg" src="song1.ogg" type="audio/ogg">
   <source id="mp3" src="song2.mp3" type="audio/mp3">
   Your browser does not support the audio tag.
</audio>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

function songOne(){ 
    document.getElementById('ogg').src="../audio/pt/lllg/Panda's Thumb.ogg";
    document.getElementById('mp3').src="../audio/pt/lllg/Panda's Thumb.mp3";
    document.getElementById('songName').innerHTML="Panda's Thumb";
    audio.play();
}
Run Code Online (Sandbox Code Playgroud)

如您所见,当函数运行时,它将.ogg文件放入id ="ogg",将.mp3放入id =".mp3".但是,当我检查元素时,源已经改变,但歌曲将无法播放.

我只能使用一个来源:

<audio id="audio" src=""></audio>
Run Code Online (Sandbox Code Playgroud)

但它只会在支持mp3或ogg的浏览器上播放而其他人则错过了. 我究竟做错了什么?

小智 5

我对HTML5音频知之甚少,但试试这个:

更改src attr后,发出audio.load();命令

查看这篇文章:http://html5doctor.com/native-audio-in-the-browser/