@Pototski

Воспроизведение аудиофайлов в заданной очереди в javascript

/*пока лишь нужно, чтобы при одном клике по тексту
вопроизводились по очереди два аудиофайла*/
<p onclick="one();two();">Кликни по этому тексту</p>

<script language="javascript" type="text/javascript">
/*получаем значение минуты у юзера, допустим, что получим 25*/
var d=new Date();
var x=d.getMinutes();
/*к каждому значению минуты присваиваем соответственную озвучку*/
/*насчет  audio.autoplay = true я пока не  понимаю,
и пишу потому что без этого не работает )*/
function one() {
  var audio = new Audio();
  if (x==25)
  {
    audio.src = 'twenty.wav';
  }
  audio.autoplay = true;
}
/*объявляем второй аудиофайл,
т.к. наша дорожка состоит из "twenty" и "five", воспроизводимых по очереди*/
function two() {
    var audio = new Audio();
  if (x==25)
  {
    audio.src = 'five.wav';
  }
  audio.autoplay = true;
}
</script>


Были идеи и о window.setTimeout(two(), 1000); но не работает или я не могу понять куда его нужно прописать. Собственно, как сделать проигрывание двух аудиофайлов по заданной очереди вопроизведения?
  • Вопрос задан
  • 4540 просмотров
Пригласить эксперта
Ответы на вопрос 1
ixon
@ixon

Насколько я понимаю нужно проигрывание музыки по очереди, если я что-то не так понял, отпишите, конкретнее, что имели ввиду.
<script>
var music={}//массив с ссылками на музыку
music[0]='five.wav';//ссылки на музыки сколько угодно, хоть сотни.
music[1]='twenty.wav';
function loadmusic(num) {//функция воспроизведения музыки по очереди
var firstmus=num;//присваиваем счетчику музыки то число, с которого начнем отсчет.
var audio = new Audio();//создаём аудио
audio.src = music[num];//присваиваем аудио текущую ссылку
audio.autoplay = true;//автостарт музыки
firstmus = firstmus + 1;//готовим следущую музыку
if(firstmus>music.lenght){//если музыки уже не осталось, то проигрываем первую
firstmus=0;
}
setTimeout(loadmusic(firstmus),audio.duration);//начинаем проигрывание следущей музыки после завершения предыдущей.
}
</script>
<p onclick="loadmusic(0)">Кликни по этому тексту</p><!--loadmusic(0) следовательно начинаем с музыки под номером 0, т. е. 'five.wav'-->
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы