我试图用 HTML5 音频标签构建一个简单的音频播放器。我<source>
在主元素中嵌套了3 个元素<audio>
,每个元素都指向具有多种格式的音轨,以支持跨浏览器。我正在使用一个简单的按钮来触发一个“点击”事件,代码如下:
<audio id="myAudio" preload="none">
<source src="audio/demo.m4a" type="audio/m4a" />
<source src="audio/demo.mp3" type="audio/mp3" />
<source src="audio/demo.ogg" type="audio/ogg" />
<!-- other sources go here -->
</audio>
var audio = document.getElementById("myAudio");
// Change track!
$("#mute").on("click", function(evt) {
$("#myAudio > source:gt(2)").attr({ src: "audio/demo2.ogg" , type: "audio/ogg"});
if(!audio.paused) {
audio.pause();
audio.play();
}
});
正如您可能猜到的,我正在尝试通过应用过滤器来更改第三个元素src
属性。:gt(2)
我不仅试图增加曲目,还试图停止播放当前曲目,以便在按下按钮时新曲目可以立即开始播放。到目前为止,这对我的网页没有任何影响。