1
我有一个音频文件阵列,只要点击一个按钮就可以播放。如果我点击所述按钮,它将播放阵列中的下一个音频文件。此外,如果当用户再次单击时正在播放音频,则会重置当前曲目并播放下一首歌曲。通过音频文件阵列播放onclick
试图找出为什么我无法循环通过我目前拥有的数组。
var song1 = $("#sound-1");
var song2 = $("#sound-2");
var song3 = $("#sound-3");
var song4 = $("#sound-4");
var song5 = $("#sound-5");
var song6 = $("#sound-6");
var song7 = $("#sound-7");
var song8 = $("#sound-8");
var audioArray = [ song1, song2, song3, song4, song5, song6, song7, song8 ];
$(".click").click(function(){
var i=0;
if (i< audioArray.length){
audioArray[i].trigger('play');
i++;
} else if (i>audioArray.length){
i = 0;
audioArray[i].trigger('play');
};
});
很酷,是的,我知道迭代已关闭,但无法看到它到底是什么。谢谢!但是,如何才能停止当前正在播放的音频文件,以便只播放一个音频文件?每次我点击它时,都会不停地播放新的音频文件,并重置前一个音频文件。 –
@PeterLum,我已经更新了答案,请查看 –
感谢您的帮助。我目前只是利用html5原生音频与jQuery的DOM操作。当每次点击触发数组中的下一首歌曲时,迭代工作,但是歌曲不会按预期停止和重置。控制台似乎没有注意到任何错误,所以我很好奇,如果有另一种方法来停止音频并将其重置,以便下一首歌曲独自播放,而不是像现在这样重叠音频。 –