Компонент «СкроллДо». Плавная навигация по странице.

Компонент «СкроллДо». Плавная навигация по странице.

В этом компоненте реализован плавный скролл после нажатия на ссылку (кнопке) к нужному блоку на странице. Если в адресе страницы будет передан хэш и блок с таким селектором будет найден на странице, прокрутка в блок будет автоматически. Также модуль позволяет построить навигацию по странице с добавлением класса текущему пункту навигации (пункта меню) при скроллах к определенному блоку.

Использование компонента

К элементам навигации (пунктам меню) или к произвольному объекту добавляем HTML-атрибут data-fls-scrollto , а в качестве значения указываем CSS селектор блока к которому нужно прокрутить:

<a href="#" data-fls-scrollto=".имя класса блока" class="link">Пункт навигации</a><a href="#" data-fls-scrollto="#id блока" class="link">Пункт навигации</a>

Если нужно, чтобы скролл учитывал шапку (не докручивал на высоту шапки, используется при фиксированных шапках), нужно добавить к объекту навигации атрибут data-fls-scrollto-header :

<a href="#" data-fls-scrollto-header data-fls-scrollto=".имя класса блока" class="link">Пункт навигации</a>

Если нужно, чтобы скролл не докручивался к блоку на указанную высоту, необходимо добавить к объекту навигации атрибут data-fls-scrollto-top , а в качестве значения указать число – необходимую высоту:

<a href="#" data-fls-scrollto-top="30" data-fls-scrollto="#id блок" class="link">Пункт навигации</a>

Добавление класса в текущий пункт навигации

Для включения функционала добавления класса необходимо задействовать компонент «наблюдатель» .

Для секций, при появлении которых будет добавляться класс в соответствующий пункт навигации, добавляем атрибут data-fls-watcher со значением navigator:

<a href="#" data-fls-scrollto=".some-section" class="link">Пункт навигации</a>
...
<section data-fls-watcher ="navigator" class="some-section"></section>

После этого, при прокрутке к объекту навигации, в соответствующий пункт навигации будет добавлен класс —navigator-active. А когда объект исчезает с вьюпорта, класс убирается.

Прокрутка к нужному блоку по хэшу (при открытии страницы)

Чтобы прокрутить страницу к нужному блоку при открытии страницы необходимо добавить в адрес хэш, содержащий имя класса нужного блока .

Пример адресной строки и нужного блока:

https://start-template.ru/index.html#некоторый-раздел

<section class="some-section"> ... </section>

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Что будем искать? Например,Человек

Мы в социальных сетях