Throttle на примере изменения страницы при прокрутке
Представим, что дизайнеры попросили нас сделать горизонтальный прогресс-бар, который бы показывал, какую часть статьи пользователь успел прочесть. Этот элемент в начале страницы должен показывать 0%, а при прокрутке менять значение.
throttle — Функция, которая вызывает другую функцию, «пропуская» некоторые вызовы с определённой периодичностью.
В этой статье мы рассмотрим следующие этапы:
👉 Разметка и стили
👉 Напишем обработчик прокрутки без оптимизаций
👉 Напишем функцию throttle
👉 Применим throttle для оптимизации обработчика
На практике:
Используйте throttle, когда вам нужно вызывать функцию раз в какое-то количество времени, пропуская вызовы между.
Например это подойдёт прогресс-бара, но для некоторых задач лучше подойдёт debounce — например, для строки поиска, которая предлагает варианты запросов.
👉 Читать статью полностью
#статья #js
👉 @frontend_mind