Повторите несколько аудиофайлов после многократного воспроизведения всего аудио с помощью JavaScript

function startReading ( 1 ) { var aCount = 3 ; // Начало чтения - Воспроизведение аудио // ------------------------------------- var repeatTimes = документ . getElementById ( 'repeatA' ). ценность ; ( функция воспроизведения ( c ) { аудио . play (); audio . onended = function () { if ( c > = repeatTimes ) { if ( i <= aCount ) { // и не достиг последнего аудио i ++; startReading ( i ); // играть в следующий звук } } else { // мы не достигли третьей игры, продолжаем идти ... play ( c + 1 ); } }; }) ( 1 ) // начинаем с 1 } , для написания аудиофайлов (3 аудио и более) каждый записанный код воспроизводится несколько раз. Я хочу внести изменения, чтобы я мог снова воспроизвести все аудио

Пример для более подробного объяснения

у меня есть

аудио1, затем аудио2, затем аудио3

Теперь я могу сделать следующее:

audio1 будет воспроизводиться 3 раза, тогда
аудио2 будет воспроизводиться 3 раза, затем
аудио3 будет играть 3 раза, затем остановка

Я не хочу, чтобы это прекратилось, мне нужно снова начать воспроизведение с первого раза аудио1 3 раза и аудио2 3 раза и аудио 3 раза снова много раз, а затем остановиться.

Код находится здесь:

i

javascript,jquery,html5,audio,

0

Ответов: 1


0

Я нашел решение.

Что мне нужно сделать, так это проверить, iпревышает ли оно количество аудио, если оно больше, чем начинать чтение с начала и создания i = 1, и делать переменную chkдля проверки каждый раз, когда я повторяю все аудио, чтобы остановить, если chk> (Требуется повторное время ).

Просто означает, что я начну рекурсию с самого начала.

Код будет:

var chk = 1;
function startReading(1){


var aCount = 3;

// Start Reading - Play the Audio
// -------------------------------------
var repeatTimes = document.getElementById('repeatA').value;
(function play(c){ 
    audio.play(); 
    audio.onended = function (){   

        if(c >= repeatTimes ){  
            if(i <= aCount){//and not reached the last audio
                    i++;
                    if(i <= aCount) startReading(i);
                    else if (repeatTimes > 1 && chk < repeatTimes ){
                            i = 1;
                            chk++;
                            startReading(i);
                    }
            }
        } else {//we didnt reached the third play, lets keep going...
            play(c+1);  
        }
    };
})(1)//start with 1

}
JavaScript, JQuery, html5, аудио,
Похожие вопросы