5

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>

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();
}

ご覧のとおり、関数を実行すると、.oggファイルがid = "ogg"に配置され、.mp3がid="。mp3"に配置されます。ただし、要素を調べると、ソースは変更されていますが、曲は再生されません。

私はそれを1つのソースでのみ動作させることができます:

<audio id="audio" src=""></audio>

しかし、それはmp3またはoggをサポートするブラウザでのみ再生され、他のブラウザは見逃します。 私は何が間違っているのですか?

4

1 に答える 1

5

HTML5オーディオについてはよくわかりませんが、次のことを試してください。

src attrを変更した後、audio.load();コマンドを発行します

この記事を確認してください:http://html5doctor.com/native-audio-in-the-browser/

于 2012-10-07T12:11:11.627 に答える