хочу выполнить функцию появления и загрузки прогресс бара на сайте в момент, когда пользователь дошёл до нужного блока где и должен отображаться прогресс бар
пытался при нахождении на нужном блоке вызывать эту функцию, но потом сайт зацикливается из-за того, что при дальнейшем скролле функция продолжает вызываться т.к видит, что блок не закончился
так же пытался поставить условие, чтобы функция отрабатывала один раз, но тоже не помогло
нужный код записан в
progressBar()
здесь описана функция которая отвечает за работу навигационной панели где описывается условия достижения нужной высоты для скролла (чтобы делать активное меню в навбаре). в конце слушателя как раз и пихал
progressBar()
window.addEventListener('scroll', function(e) {
const y = window.pageYOffset;
const scrollTop = $(this).scrollTop();
if (y >= 50) {
header.classList.add('fixed-on-scroll');
header.classList.remove('header');
logo.src = 'img/logo-dark.png';
$('.main section').each(function(i) {
if ($(this).position().top <= y + 120) {
$('.header__menu-list a.header__menu-link--active').removeClass('header__menu-link--active');
$('.header__menu-list a').eq(i).addClass('header__menu-link--active');
}
});
} else {
link[0].classList.add('header__menu-link--active');
header.classList.add('header');
header.classList.remove('fixed-on-scroll');
if ($(window).width() >= 991) {
logo.src = 'img/logo.png';
}
}
let isResizeble = false;
if (!isResizeble) {
progressBar();
isResizeble = true;
}
});