Музыкальный проигрыватель Javascript: быстрый поиск, но прослушивание, если панель поиска перемещена вручную

#javascript #audio

Вопрос:

Слайдер поиска отлично отслеживает воспроизведение звука, но перемещение «маркера индикатора выполнения» вручную с помощью мыши приводит к тому, что звук переходит к следующей песне.

 
<input id = "seekslider" type="range" min="1" max="100" value="0" step="1">

let seekslider = document.getElementById("seekslider");
seekslider.addEventListener("mousedown", function(event) { seeking=true; seek(event); });
seekslider.addEventListener("mousemove", function(event) { seek(event); });
seekslider.addEventListener("mouseup", function() { seeking=false; });

function seek(event) {
        if(seeking) {
            seekslider.value = event.clientX - seekslider.offsetLeft;
            seekto = audio.duration * (seekslider.value / 100);
            audio.currentTime = seekto;
        }
    }

  function seektimeupdate() {
        let nt = audio.currentTime * (100 / audio.duration);
        if (isNaN(nt)) return;
        seekslider.value = nt;
        let curmins = Math.floor (audio.currentTime / 60);
        let cursecs = Math.floor (audio.currentTime - curmins * 60);
        let durmins = Math.floor (audio.duration / 60);
        let dursecs = Math.floor (audio.duration - durmins * 60);
        if(cursecs < 10){ cursecs = "0" cursecs; }
        if(dursecs < 10){ dursecs = "0" dursecs; }
        if(curmins < 10){ curmins = "0" curmins; }
        if(durmins < 10){ durmins = "0" durmins; }
        curtimetext.innerHTML = curmins ":" cursecs;
        durtimetext.innerHTML = durmins ":" dursecs;
    }