Можете ли вы заставить Internet Explorer перерисовать / нарисовать элемент? По какой-то причине анимация обновляется только при нажатии правой кнопки мыши - PullRequest
0 голосов
/ 13 апреля 2019

У меня есть элемент прогресса, значение которого изменяется через JavaScript от 0 до 1000 в течение 7 секунд.Это хорошо работает в Chrome, индикатор выполнения анимирует от 0 до 1000, а затем перезапускается через 7 секунд.В Internet Explorer 11 индикатор выполнения простаивает и догоняет (по какой-то странной причине), когда я щелкаю правой кнопкой мыши по экрану.Появление контекстного меню, кажется, перерисовывает страницу, а индикатор выполнения отражает измененное значение, но, как я уже сказал, только когда вы щелкаете правой кнопкой мыши страницу.Я включил изображение элемента с подсветкой над значением, а также мою функцию для полноты.

progress

function updateProgressBar() {
    if (document.getElementById("video-progress")) {
        var progressBar = document.getElementById("video-progress");
        clearInterval(update);
        clearInterval(intervalID);
        progressBar.value = 50;
        var percentage = 1000;
        var curr = progressBar.value;
        update = setInterval(function() {
            if (curr > percentage) {
                clearInterval(update);
                clearInterval(intervalID);
                updateProgressBar();
                nextSlide();
            }
            progressBar.value = curr++;
        }, 7);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...