Я вызываю эту функцию индикатора выполнения, когда страница загружается и с каждым eventListener, чтобы дать пользователям обратную связь, когда они взаимодействуют с различными входами.
Проблема: кажется, что функция работает "навсегда", когда я Журнал консоли (progressBar.style.width)
Вот мой код:
HTML
<div class="progress">
<div class="progress-bar" id="progressbar" role="progressbar" style="width: 0%" aria-
valuenow="0" aria-valuemin="0" aria-valuemax="100"></div>
</div>
CSS + bootstrap
.bar_container{
width: 50%;
margin: 0px auto;
margin-top: 20px;
}
Функция для загрузки панели
progressBar = document.getElementById("progressbar")
function loadBar() {
let fill = 0
window.setInterval(function() {
fill += 60
if (fill === 100) {
clearInterval()
} else {
progressBar.style.width = fill + "%"
console.log(progressBar.style.width) // seems like this function runs infinitely ???
}
}, 50)
}
Вызов функции с прослушивателем событий
document.querySelector('#show-pm').addEventListener('change', function (e) {
filters.hideAm = e.target.checked
filterMeetings(filters)
progressBar.style.width = "0%" //Intending to reset the progress to 0% ???
loadBar()
})
Спасибо за любую помощь!