У меня есть несколько аудиофайлов (a.mp3, b.mp3, c.mp3) и случайный массив (b, c, a). Я хочу воспроизвести эти аудиофайлы в данном порядке, например, в плейлисте.
Это мой код до сих пор:Плейлист с JavaScript
<audio id="player" />
<script>
//... extract
var player = document.getElementById('player');
player.src="audio/"+array[0]+".mp3";
player.play(); // play first file
for(c = 0; c < array.length; c++){
var next = "audio/"+array[c]+".mp3";
document.write(next);
player.addEventListener("ended",function() {
this.src = next;
this.play();
});
}
</script>
Проблема заключается в том, после того, как воспроизведение первого файла, второй файл воспроизводится навсегда. Он никогда не останавливается, и следующий файл не может быть воспроизведен.
@Paulpro Я предполагаю, что массив имеет только два элемента. – bfavaretto
Нет, он в этом случае имел 3 элемента и действительно зациклил второй файл. – user1170330