Метод isActivated библиотеки Driver.js
предназначен для проверки состояния текущего экземпляра драйвера —
активен ли он в данный момент. Этот метод возвращает логическое значение
(true или false), что позволяет программно
контролировать запуск и завершение интерактивных туров.
const driver = new Driver();
console.log(driver.isActivated()); // false
driver.start();
console.log(driver.isActivated()); // true
Тип возвращаемого значения:
Boolean.
Возвращаемое значение:
true — если тур активен и элементы подсветки
отображаются на странице.false — если тур завершён или ещё не запущен.Метод не принимает аргументов.
Контроль повторного запуска тура Перед вызовом
start() можно проверить, активен ли уже тур, чтобы избежать
наложения подсветок и конфликтов с событиями:
if (!driver.isActivated()) {
driver.start();
}Условное отображение подсказок В сложных интерфейсах с динамическими элементами проверка состояния позволяет корректно запускать подсказки:
document.querySelector("#help-btn").addEventListener("click", () => {
if (!driver.isActivated()) {
driver.start();
}
});Синхронизация с другими компонентами Можно отслеживать состояние драйвера для временной блокировки интерфейса:
if (driver.isActivated()) {
disableFormInteractions();
} else {
enableFormInteractions();
}Метод isActivated тесно связан с жизненным циклом
Driver.js:
start() — активирует тур, после чего
isActivated() вернёт true.reset() — завершает тур и сбрасывает состояние,
isActivated() возвращает false.highlight() — подсвечивает элемент, при этом
isActivated() остаётся true до вызова
reset() или завершения тура.next() / previous() — переход между шагами
не влияет на возвращаемое значение isActivated(), пока тур
активен.Проверка перед динамическим обновлением шагов:
if (driver.isActivated()) {
driver.reset();
driver.defineSteps([
{ element: "#step1", popover: { title: "Шаг 1", description: "Описание шага 1" } },
{ element: "#step2", popover: { title: "Шаг 2", description: "Описание шага 2" } }
]);
driver.start();
}
Интеграция с таймерами и событиями:
setInterval(() => {
if (!driver.isActivated() && shouldStartTour()) {
driver.start();
}
}, 1000);
Метод isActivated является простым, но критически важным
инструментом для контроля состояния интерактивных подсказок и
правильного управления жизненным циклом Driver.js.