FullPage.js предоставляет возможность создавать одностраничные сайты с вертикальной и горизонтальной прокруткой, при этом управление навигацией может быть интегрировано с URL через якоря. Это позволяет пользователю переходить к определённому разделу страницы напрямую, а также обеспечивает сохранение состояния страницы при обновлении браузера или обмене ссылками.
Для активации навигации через URL необходимо использовать параметр
anchors при инициализации плагина. Этот параметр принимает
массив строк, каждая из которых соответствует определённому разделу.
new fullpage('#fullpage', {
anchors: ['home', 'about', 'services', 'contact'],
navigation: true,
navigationPosition: 'right',
scrollOverflow: true
});
#.После настройки, URL страницы будет автоматически изменяться при переходе между секциями:
https://example.com/#about
https://example.com/#services
FullPage.js автоматически обновляет URL при прокрутке. Если
пользователь прокручивает страницу вниз, адрес браузера изменяется в
соответствии с anchors. Это позволяет создавать прямые
ссылки на любой раздел и поддерживать корректное состояние при
обновлении страницы.
afterLoad: function(origin, destination, direction){
console.log("Перешли на секцию: " + destination.anchor);
}
Ссылки с якорями позволяют сразу перейти к нужной секции при загрузке страницы:
<a href="#services">Наши услуги</a>
<a href="#contact">Контакты</a>
При клике браузер плавно прокручивает страницу до указанного якоря. Это особенно удобно для одностраничных лендингов с большим количеством секций.
FullPage.js предоставляет методы для программного перехода между секциями и синхронизации с URL.
// Переход к секции с якорем 'contact'
fullpage_api.moveTo('contact');
// Переход к конкретной горизонтальной секции (если используется горизонтальный слайдер)
fullpage_api.moveTo('services', 2);
anchor может быть строкой из массива
anchors, второй index указывает на
горизонтальный слайд внутри секции (нумерация с 1).При использовании якорей встроенная навигация браузера поддерживает кнопки «Назад» и «Вперёд». FullPage.js автоматически отслеживает изменения URL и перемещает пользователя на соответствующую секцию.
onLeave: function(origin, destination, direction){
console.log("Происходит уход с секции: " + origin.anchor);
}
Такой подход позволяет синхронизировать URL и состояние страницы без необходимости вручную управлять историей браузера.
FullPage.js позволяет связать внешние элементы управления с навигацией через якоря. Например, меню сайта может менять активный элемент при прокрутке и одновременно обновлять URL.
document.querySelectorAll('nav a').forEach(link => {
link.addEventListener('click', function(e){
e.preventDefault();
const anchor = this.getAttribute('href').replace('#', '');
fullpage_api.moveTo(anchor);
});
});
click предотвращает стандартное поведение
браузера.fullpage_api.moveTo(anchor) инициирует плавную
прокрутку к нужной секции.anchors, чтобы URL оставался согласованным.moveTo.Навигация через URL с помощью якорей в fullPage.js обеспечивает как удобство пользователя, так и возможность создавать SEO-дружелюбные одностраничные сайты с лёгкой интеграцией внешних ссылок и меню. Она позволяет поддерживать постоянное состояние страницы и улучшает взаимодействие с браузером и историей посещений.