/ / Audio in HTML5: come riprodurre un suono dopo un altro suono? - html5, html5-audio

Audio in HTML5: come riprodurre un suono dopo un altro suono? - html5, html5-audio

Ho tre oggetti sonori:

sound_a = new Audio("a.mp3");
sound_b = new Audio("b.mp3");
sound_c = new Audio("c.mp3");

Voglio riprodurre il suono b al termine del suono a. E riprodurre il suono c al termine del suono b.

Come posso farlo?

Il mio codice è il seguente:

sound_a.pause();
sound_a.currentTime = 0;
sound_a.play();

sound_b.pause();
sound_b.currentTime = 0;
sound_b.play();

sound_c.pause();
sound_c.currentTime = 0;
sound_c.play();

risposte:

1 per risposta № 1

il modo più semplice per farlo sarebbe, mantenere un singolo oggetto audio, una matrice di fonti, ascoltare l'evento finale e giocare:

let i = -1, sources =[...], a= new Audio(), playNext= e => {
i++;
if(!sources[i]) return;
a.src=sources[i];
}
a.autoplay = true;
a.onended = playNext;
playNext();

Fiddle Demo


1 per risposta № 2

Puoi trovare una risposta per la tua domanda Qui. Se ciò non aiuta, prova a trovare altre soluzioni, poiché questa domanda era già stata posta e risolta in precedenza.