Каждый шаг в Shepherd.js создаётся через объект конфигурации с набором параметров. Обязательные параметры шага обеспечивают корректное отображение подсказки и взаимодействие с пользователем. Без них шаг не будет работать или вызовет ошибки при запуске тура.
idПараметр id является уникальным идентификатором
шага. Он используется для ссылки на шаг внутри тура, особенно
при переходе между шагами с помощью методов next() и
back().
Пример использования:
const tour = new Shepherd.Tour();
tour.addStep({
id: 'intro-step',
text: 'Добро пожаловать в наше приложение!'
});
Ключевые моменты:
id должен быть строкой.textПараметр text отвечает за содержимое
подсказки. Это может быть строка или функция, возвращающая
строку. Shepherd.js поддерживает форматирование текста через HTML.
Пример с HTML:
tour.addStep({
id: 'feature-step',
text: '<strong>Обратите внимание:</strong> здесь находится важная функция.'
});
Особенности:
text шаг не будет содержать информацию, и подсказка
не имеет смысла.attachToattachTo определяет элемент на странице, к
которому будет привязан шаг, и позицию подсказки относительно
него. Параметр принимает объект с двумя свойствами:
attachTo: {
element: '.selector',
on: 'bottom'
}
Состав параметров:
element — CSS-селектор или DOM-элемент.on — позиция подсказки: 'top',
'bottom', 'left', 'right',
'auto'.Особенности:
on позволяет контролировать направление стрелки
подсказки.Хотя id, text и attachTo —
ключевые обязательные параметры, есть дополнительные свойства, которые
существенно влияют на работу шага, особенно в сложных
турах.
buttonsМассив кнопок для управления шагом. Каждая кнопка имеет свойства:
text — текст кнопки.action — функция, выполняемая при клике.classes — CSS-классы для стилизации.Пример:
tour.addStep({
id: 'button-step',
text: 'Нажмите кнопку для продолжения',
attachTo: { element: '#continue', on: 'top' },
buttons: [
{
text: 'Далее',
action: tour.next
}
]
});
Особенности:
buttons делают шаг интерактивным и позволяют управлять
последовательностью.cancelIconПараметр cancelIcon управляет отображением кнопки
закрытия шага. Обычно это объект с CSS-классами и текстом, например:
cancelIcon: {
enabled: true
}
Особенности:
enabled = false, шаг нельзя закрыть пользователю
вручную.scrollToПараметр scrollTo управляет прокруткой страницы к
элементу, к которому привязан шаг. Может принимать true,
false или объект с настройками прокрутки:
scrollTo: { beh * avior: 'smooth', block: 'center' }
Особенности:
const tour = new Shepherd.Tour({
defaultStepOptions: {
cancelIcon: { enabled: true },
scrollTo: { beh * avior: 'smooth', block: 'center' }
}
});
tour.addStep({
id: 'main-step',
text: 'Это основной шаг, демонстрирующий ключевую функциональность.',
attachTo: { element: '#main-feature', on: 'right' },
buttons: [
{ text: 'Назад', action: tour.back },
{ text: 'Далее', action: tour.next }
]
});
Особенности реализации:
defaultStepOptions позволяют задать общие настройки для
всех шагов.id,
text и attachTo для корректной работы.buttons, cancelIcon и
scrollTo делает шаг интерактивным и удобным для
пользователя.Эти параметры формируют основу правильного шага в Shepherd.js и обеспечивают стабильное поведение тура на любой странице.