2012-10-07 11 views
5

Ich versuche, den gleichen Song in zwei verschiedene Quellen auf meinem Audio-Player mit Javascripts "getElementByID" einfügen.Javascript HTML5 <audio> mehrere Quelle

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

Wie Sie sehen können, wenn die Funktion ausgeführt wird, es stellt die Ogg-Datei in die id = "ogg" und der .mp3 in die ID = ". mp3". Wenn ich jedoch das Element inspiziere, hat sich die Quelle geändert, aber das Lied wird nicht abgespielt.

ich bekommen kann es mit nur einer Hand zu arbeiten:

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

Aber dann wird es nur auf Browsern spielen, die mp3 oder ogg unterstützen und die anderen entgehen. Was mache ich falsch?

+1

nach http://www.w3schools.com/html/html5_audio.asp sollte Ihr mp3 'type =" audio/mpeg "haben' – xception

+0

Danke für den Fix, ich habe das geändert b Aber es hat es nicht behoben. – user1719526

Antwort

5

Ich weiß nicht viel über HTML5 Audio, aber versuchen Sie dies:

Nachdem Sie den src attr wurde, eine audio.load(); Befehl

prüfen Sie diesen Artikel ändern: http://html5doctor.com/native-audio-in-the-browser/

+0

Wenn ich den Repräsentanten hätte, würde ich dich wählen, Sir. Ich schätze die Hilfe! Ich weiß nicht, wie ich das an mir vorbeigehen ließ. – user1719526

+0

@ user1719526 Es ist OK – chanjarster