Как мы знаем, часто рекомендуется отключать прослушиватели прокрутки, чтобы UX был лучше, когда пользователь прокручивал.
Однако я часто встречал библиотеки и articles где такие люди, как Пол Льюис, рекомендуют использовать requestAnimationFrame
. Однако по мере того, как веб-платформа быстро развивается, возможно, некоторые советы станут устаревшими с течением времени.
Проблема, которую я вижу, заключается в том, что для обработки событий прокрутки существуют очень разные операции, такие как создание сайта parallax или обработка бесконечной прокрутки и разбиения на страницы.
Я вижу 3 основных инструмента, которые могут изменить значение UX:
Итак, я хотел бы знать, для каждого пользователя (у меня только 2, но вы можете придумать другие), какой инструмент я должен использовать прямо сейчас, чтобы иметь очень хороший опыт прокрутки?
Чтобы быть более точным, мой главный вопрос будет больше связан с бесконечными прокручиваемыми представлениями и разбиением на страницы (которые обычно не должны запускать визуальную анимацию, но мы хотим хороший опыт прокрутки), лучше ли заменить requestAnimationFrame
на комбо из requestIdleCallback
+ пассивного обработчика событий прокрутки? Мне также интересно, когда, если имеет смысл использовать requestIdleCallback
для вызова API или обработки ответа API, чтобы позволить прокрутке работать лучше, или это то, что браузер может уже обрабатывать для нас?