Driver.js — это лёгкая JavaScript-библиотека, предназначенная для создания интерактивных пошаговых туров по интерфейсу веб-приложений. Основная задача — визуально выделять элементы страницы и последовательно объяснять их назначение с помощью всплывающих подсказок.
Библиотека используется для:
Driver.js работает поверх DOM, не требуя сложной интеграции или зависимости от фреймворков.
В основе Driver.js лежит концепция шагов (steps). Каждый шаг:
Механизм включает:
Driver.js выделяет элемент с помощью:
Это позволяет сосредоточить внимание пользователя на конкретной части интерфейса.
Последовательность шагов формирует полноценный сценарий обучения:
Подсказки (popover) включают:
Настраиваются:
Driver.js предоставляет API для:
Библиотека:
Driver (экземпляр библиотеки) Главный объект, управляющий логикой тура.
Step (шаг) Описание одного элемента интерфейса:
Popover (подсказка) UI-компонент, отображающий информацию.
Overlay (оверлей) Затемнённая область вокруг выделенного элемента.
Создаётся экземпляр Driver
Определяется массив шагов
При запуске:
При переходе:
npm install driver.js
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/driver.js/dist/driver.min.css">
<script src="https://cdn.jsdelivr.net/npm/driver.js/dist/driver.min.js"></script>
import Driver from "driver.js";
import "driver.js/dist/driver.css";
const driver = new Driver();
driver.defineSteps([
{
element: "#header",
popover: {
title: "Заголовок",
description: "Основная панель навигации",
position: "bottom"
}
},
{
element: "#menu",
popover: {
title: "Меню",
description: "Здесь находятся основные разделы",
position: "right"
}
}
]);
driver.start();
Driver.js поддерживает глобальные параметры:
const driver = new Driver({
opacity: 0.75,
padding: 10,
allowClose: true,
overlayClickNext: false,
doneBtnText: "Готово",
closeBtnText: "Закрыть",
nextBtnText: "Далее",
prevBtnText: "Назад"
});
Driver.js позволяет отслеживать жизненный цикл тура:
const driver = new Driver({
onStart: () => console.log("Тур начался"),
onReset: () => console.log("Тур завершён"),
onNext: () => console.log("Следующий шаг"),
onPrevious: () => console.log("Предыдущий шаг")
});
driver.moveNext();
driver.reset();
Driver.js учитывает изменения в DOM:
Практика:
Библиотека позволяет полностью изменить внешний вид:
.driver-popover {
background-color: #222;
color: #fff;
}
.driver-overlay {
background-color: rgba(0, 0, 0, 0.8);
}
Можно:
Пошаговое объяснение ключевых элементов интерфейса.
Выделение новых функций после обновлений.
Показ возможностей продукта потенциальным пользователям.
Объяснение сложных действий внутри интерфейса.
Driver.js отличается от аналогов:
| Библиотека | Особенности |
|---|---|
| Intro.js | более тяжёлая, больше возможностей |
| Shepherd.js | сложнее настройка |
| Driver.js | минимализм и простота |
Driver.js:
Driver.js работает в:
Driver.js представляет собой инструмент для создания визуально понятных интерактивных сценариев, позволяющий управлять вниманием пользователя и объяснять интерфейс через последовательное выделение элементов и текстовые подсказки.