javascript42
Главная
Все учебники
Блог
Учебник Driver.js
Введение
Что такое Driver.js
История создания и развитие библиотеки
Области применения
Преимущества и ограничения
Альтернативные решения
Установка и первоначальная настройка
Установка через npm
Установка через yarn
Подключение через CDN
Проверка установки
Структура файлов библиотеки
Совместимость с браузерами
Основы работы с Driver.js
Создание экземпляра драйвера
Первый тур по странице
Методы запуска и остановки
Понятие шага
Жизненный цикл тура
Конфигурация драйвера
Глобальные настройки
Параметры анимации
Настройки оверлея
Управление позиционированием
Настройки отступов и смещений
Конфигурация классов CSS
Настройки доступности
Работа с шагами
Определение шага
Селекторы элементов
Описание и заголовок шага
Позиционирование попапа
Выравнивание относительно элемента
Настройки отдельного шага
Переопределение глобальных параметров
Всплывающие подсказки
Структура попапа
Кастомизация содержимого
Управление кнопками
Индикатор прогресса
Стилизация попапа
Адаптивное поведение
Подсветка элементов
Механизм выделения
Настройка радиуса подсветки
Отступы вокруг элемента
Анимация подсветки
Работа с z-index
Подсветка без попапа
Навигация между шагами
Переход к следующему шагу
Возврат к предыдущему шагу
Переход к конкретному шагу по индексу
Программное управление навигацией
Условная навигация
Циклическое перемещение
События и хуки
Обзор системы событий
События жизненного цикла тура
События отдельных шагов
onHighlightStarted
onHighlighted
onDeselected
onNext и onPrevious
onDestroyed
Передача данных в коллбэках
Предотвращение действий по умолчанию
Кастомизация интерфейса
Изменение HTML разметки попапа
Кастомные кнопки
Добавление собственных элементов
Работа с шаблонами
Динамическое формирование контента
Локализация текстов
Стилизация
Подключение стилей
Переопределение CSS переменных
Кастомные темы
Стилизация оверлея
Адаптация под дизайн-систему
Работа с DOM
Взаимодействие с динамическими элементами
Обновление целевых элементов
Скроллинг к элементу
Работа с элементами вне viewport
Обработка изменений в DOM
Работа с shadow DOM
Продвинутые техники
Условные туры
Ветвление логики
Асинхронные шаги
Интеграция с AJAX
Работа с SPA
Сохранение прогресса
Повторный показ туров
Адаптивность и мобильные устройства
Определение размера экрана
Адаптивное позиционирование
Touch события
Отключение на мобильных устройствах
Специфика iOS и Android
Доступность
ARIA атрибуты
Управление с клавиатуры
Фокус и tab-индексы
Поддержка скринридеров
Контрастность и читаемость
Настройки для пользователей с ограниченными возможностями
Производительность
Оптимизация рендеринга
Управление памятью
Ленивая загрузка туров
Минимизация reflow и repaint
Профилирование и отладка
Лучшие практики
Интеграция с фреймворками
Использование с React
Использование с Vue
Использование с Angular
Использование с Svelte
Wrapper компоненты
Управление состоянием
API Reference
Методы экземпляра драйвера
drive
moveNext
movePrevious
moveTo
hasNextStep
hasPreviousStep
isActivated
destroy
Статические методы
Свойства конфигурации
Отладка и решение проблем
Включение режима отладки
Логирование событий
Частые ошибки
Конфликты с другими библиотеками
Проблемы позиционирования
Проблемы с z-index
Тестирование
Интеграционное тестирование
E2E тестирование туров
Моки и стабы
Тестирование событий
Автоматизация проверок
Миграция между версиями
Изменения в API
Breaking changes
Обновление с версии 0.x
Обновление с версии 1.x
Стратегия миграции
Обратная совместимость
Расширение функциональности
Создание плагинов
Расширение базового класса
Добавление кастомных методов
Интеграция сторонних библиотек
Создание переиспользуемых решений
Лучшие практики
Проектирование пользовательских туров
UX рекомендации
Оптимальное количество шагов
Когда использовать Driver.js
Когда не использовать
Архитектурные паттерны
Примеры реализации
Туры для административных панелей
Сложные многошаговые сценарии