Есть такой код
let videoSetZenit = 1900;
let speedZenit = 1005;
var audio = new Audio();
audio.src = "https://cdn.glitch.com/6f5cf88c-df56-4351-a8c5-0b59d5ca8ca2%2FNILETTO%20-%20%D0%9B%D1%8E%D0%B1%D0%B8%D0%BC%D0%BA%D0%B0_(Inkompmusic.ru).mp3?v=1604248176277";
audio.play();
audio.volume = 0.0;
var lirycs = [
{
"time": 111430,
"duration": 679,
"name": "inup_left_ar"
},
{
"time": 149270,
"duration": 536,
"name": "inupleft_po"
},
{
"time": 191270,
"duration": 750,
"name": "indown_right_ar"
}
]
var next_name = lirycs.shift();
var checker = setInterval(function(){
if(next_name.time<audio.currentTime*speedZenit){
if(end==0){
myfuncition();
iZenit++;
console.log(next_name.time + ' ' + next_name.name);
next_name = lirycs.shift();
}
}
if(audio.ended)clearInterval(checker);
});
Все работает, только вот после "149270" тайма, код перестает работать, почему? А если у меня будет массив где таймы от 1000 до 276378 ? 60% кода работать не будет, потому что после того тайма не выполняется функция. Что мне делать? Менять полностью код? Может вы можете предложить вариант кода который будет работать так же, но с работающими таймами ?