Добрый день, подскажите пожалуйста, как сделать, чтобы функция запускалась один раз и при скроле сверху вниз ? Код (Javascript): $.fn.isInViewport = function() { var elementTop = $(this).offset().top; var elementBottom = elementTop + $(this).outerHeight(); var viewportTop = $(window).scrollTop(); var viewportBottom = viewportTop + $(window).height(); return elementBottom > viewportTop && elementTop < viewportBottom; }; Код (Javascript): $(window).on('resize scroll', function() { if ($('.progressbar-start').isInViewport()) { DemoProgressbars() // do something } else { } });
Пишем маркер на какой то скрытый div/input или sessionStorage со значением к примеру FALSE. Если функция первый раз отработала то меняем это значение на TRUE. А саму функция запускаем через IF (считать значение маркера, если FALSE то запускаем функцию).