Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Остановить таймер в видеоплеере если он на паузе (https://javascript.ru/forum/misc/80404-ostanovit-tajjmer-v-videopleere-esli-na-pauze.html)

korifey 01.06.2020 14:15

Остановить таймер в видеоплеере если он на паузе
 
Пытаюсь сделать свой видеоплеер и столкнулся с такой проблемой: при запуске видео нижняя панель меню убирается, но если есть движение мыши внутри плеера то она появляется обратно и через 2 сек. автоматически если нет движения мыши убирается.Загвоздка в том что если таймер запущен и нажата пауза он после 2-х сек. убирает меню, а этого не должно быть и почему при паузе onmousemove продолжает работать.Помогите исправить.
document.getElementById('player').addEventListener('click',function(){
var timer;
if(videoPlayer.paused) {
glplayer.onmousemove = function() {
//нижнее меню появляется
let target = event.target.closest('#control');
clearTimeout(timer);
if(!target){//если мышь не на нижнем меню
timer = setTimeout(function() {//запускается таймер и через 2 сек. нижнее меню скрывается
}, 2000);
}else{clearTimeout(timer);}
    };
videoPlayer.play();
//нижнее меню скрывается
} else {
videoPlayer.pause();
//тут по идеи нужно остановить таймер но clearTimeout(timer) не работает
//нижнее меню снова появляется
}

},false);


Часовой пояс GMT +3, время: 10:28.