Инерционная прокрутка — это эффект плавного продолжения движения страницы после взаимодействия пользователя с колесиком мыши, сенсорной панелью или тачскрином. В библиотеке fullPage.js этот механизм обеспечивает естественное ощущение движения между секциями сайта, создавая впечатление «плавного скольжения» контента.
FullPage.js разделяет страницу на отдельные секции
(section) и слайды (slide),
которые могут занимать всю высоту или ширину окна. Инерционная прокрутка
активируется при скролле пользователя и обеспечивает:
Инерционная прокрутка отличается от обычного скролла тем, что перемещение между секциями не происходит мгновенно, а с визуальной плавностью, имитируя физическое движение.
Для активации инерционной прокрутки используются основные параметры и методы fullPage.js:
new fullpage('#fullpage', {
autoScrolling: true,
scrollHorizontally: true,
easing: 'easeInOutCubic',
scrollingSpeed: 700,
fitToSection: true,
fitToSectionDelay: 1000,
inertia: true
});
Пояснение ключевых параметров:
'easeInOutCubic' или
аналогичные кривые Безье.true,
автоматически подгоняет страницу под ближайшую секцию после завершения
движения.Для более тонкой настройки можно управлять параметрами через событие
onScroll и методы API:
fullpage_api.setScrollingSpeed(900);
fullpage_api.setAllowScrolling(true);
Для симуляции физической инерции можно использовать сочетание scrollingSpeed и fitToSectionDelay, создавая эффект, при котором секция «плавно замедляется» перед остановкой.
На сенсорных экранах инерционная прокрутка реализуется иначе:
inertia через responsiveWidth и
responsiveHeight:new fullpage('#fullpage', {
autoScrolling: true,
inertia: true,
responsiveWidth: 768,
responsiveHeight: 600
});
При уменьшении ширины или высоты инерционная прокрутка может отключаться для повышения производительности и предотвращения «рывков» при слабых устройствах.
Инерционная прокрутка корректно интегрируется с анкорной навигацией:
new fullpage('#fullpage', {
anchors: ['firstPage', 'secondPage', 'thirdPage'],
inertia: true,
menu: '#menu'
});
transform: translate3d для элементов, участвующих в
анимации.Инерционная прокрутка в fullPage.js создаёт эффект «живого» сайта, где движение ощущается как физически натуральное, а переходы между секциями становятся визуально комфортными и предсказуемыми.