Метод setAutoScrolling

Метод setAutoScrolling является ключевым инструментом управления поведением прокрутки в библиотеке fullPage.js. Он позволяет динамически включать или отключать автоматическую прокрутку страниц, что особенно полезно при изменении интерфейса на лету или при адаптации под различные устройства.


Синтаксис

fullpage_api.setAutoScrolling(boolean);

Параметры:

  • boolean — логическое значение:

    • true — включение автоматической прокрутки.
    • false — отключение автоматической прокрутки.

Метод возвращает undefined и применяется напрямую к объекту fullpage_api, который создаётся при инициализации fullPage.js.


Основное поведение

При включённом autoScrolling страницы будут занимать всю высоту окна браузера, а переход между секциями происходит с анимацией скролла, создавая эффект «карусели» с привязкой к каждой секции. При отключении автоматической прокрутки (false) страница ведёт себя как обычная веб-страница с вертикальной прокруткой, что позволяет использовать стандартный скролл браузера.


Примеры использования

Включение автоматической прокрутки:

fullpage_api.setAutoScrolling(true);

После вызова все секции будут прокручиваться с плавной анимацией, и активная секция всегда будет занимать весь экран.

Отключение автоматической прокрутки:

fullpage_api.setAutoScrolling(false);

Страница становится обычной, скролл осуществляется стандартным способом, а эффекты перехода между секциями отключаются.


Взаимодействие с другими методами

Метод setAutoScrolling тесно связан с рядом других функций fullPage.js:

  • setScrollingSpeed(speed) — скорость анимации прокрутки при включённом autoScrolling.
  • moveSectionUp() / moveSectionDown() — навигация между секциями, поведение которых зависит от состояния autoScrolling.
  • responsiveSlides() — изменение поведения слайдов внутри секций при динамическом включении или отключении автоматической прокрутки.

Важно учитывать, что при изменении значения autoScrolling рекомендуется корректировать стили контейнера и секций, так как библиотека может использовать дополнительные CSS-свойства для блокировки стандартного скролла.


Практические рекомендации

  1. Динамическое переключение для адаптивных интерфейсов. На мобильных устройствах удобнее отключать автоматическую прокрутку, оставляя пользователю привычное поведение скролла. Метод setAutoScrolling(false) позволяет легко реализовать это.

  2. Сочетание с навигационными событиями. После изменения состояния autoScrolling можно вызвать fullpage_api.reBuild(), чтобы пересчитать размеры секций и корректно применить новые параметры.

  3. Контроль плавности анимации. При включении autoScrolling скорость перехода можно задавать с помощью setScrollingSpeed(speed), что позволяет создавать более мягкий или динамичный эффект скролла.


Особенности работы

  • При вызове setAutoScrolling(true) fullPage.js автоматически блокирует стандартный скролл браузера и устанавливает контейнеру фиксированную высоту.
  • При отключении setAutoScrolling(false) библиотека восстанавливает возможность вертикального скролла и деактивирует фиксированное позиционирование секций.
  • Метод можно использовать в любой момент после инициализации fullPage.js, включая события после загрузки страницы или изменения размеров окна.

Сценарии применения

  • Промо-страницы и лендинги — включение autoScrolling для создания визуально привлекательного эффекта пролистывания.
  • Контентные сайты с длинными текстами — отключение автоматической прокрутки для удобства чтения на мобильных устройствах.
  • Динамическое изменение интерфейса — переключение между стандартной прокруткой и полностраничным скроллом в зависимости от состояния окна, модальных окон или интерактивных элементов.

Метод setAutoScrolling обеспечивает гибкий контроль над поведением прокрутки, позволяя сочетать преимущества fullPage.js с адаптивностью и привычным пользовательским опытом.