Этот вопрос закрыт для ответов, так как повторяет вопрос Как при включении одного муз.файла выключать другой?
@Janjabuja

Как запустить несколько аудио файлов подряд, чтобы они не запускались одновременно?

var audio1 = new Audio();
audio1.src = nameVoice1;
audio1.autoplay = true;
var audio2 = new Audio();
audio2.src = nameVoice2;
audio2.autoplay = true;
var audio3 = new Audio();
audio3.src = nameVoice3;
audio3.autoplay = true;

в таком случае они запускаются одновременно. Как сделать так, чтобы запускались друг за другом, как только закончится предыдущий? Нужно запустить именно фоном.
  • Вопрос задан
  • 411 просмотров
Решения вопроса 1
@alexalexes
Повесьте на тег аудио обработчик события onended, который будет подставлять src следующего трека.
var audio = new Audio();
audio.onended = function(e)
{
  var target = e.target;
  var cur_src = target.getAttribute('src');
  switch(cur_src)
  {
     case '1.mp3': target.setAttribute('src', '2.mp3'); break;
     case '2.mp3': target.setAttribute('src', '3.mp3'); break;
     case '3.mp3': target.setAttribute('src', '1.mp3'); break;
  }
  target.play();
};
audio.setAttribute('src', '1.mp3');
audio.autoplay = true;

PS: обязательно предусмотрите возможность останавливать фоновую музыку, и запоминать это действие в куках, иначе пользователи проклянут вас и ваш сайт, так как фон надоедает примерно через минуту, а то и раньше.)))
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы