Перейти к основному содержимому

Triggers

Триггеры - очень секция, которая включает в себя большое количество логики, но если кратко то эта секция отвечает за обработку событий виджета или страницы с выполнением различного js кода. Триггеры далее мы рассмотрим на примере WidgetTriggers, но есть еще PageTriggers оба класса реализованы на базе BaseTrigger, по этим ссылкам также можно найти больше технической информации

Триггеры задаются в repeater поле. Настройка одного триггера разделена на три вкладке, как на скрине ниже:

Pasted image 20241024181725

Рассмотрим каждую вкладку отдельно:

Триггер

  • Событие - при котором триггер будет запущен. Сейчас это "Клик по виджету", "Клик вне виджета", "Наведение на виджет", "Наведение вне виджета". Для фрейма банков вопросов есть триггер "Вопрос пройден". Для фрейма фреймсетов есть триггер "Фрейм пройден":
  • Действие - действий много, вот актуальный список:
    • Открытие страницы - открытие страницы курса. Следующая, предыдущая, по id
    • Действия фрейма - действия с elarning виджетом. Следующий фрейм, предыдущий фрейм, перейти к фрейму по id, случайный фрейм, рестарт
    • Действия курса - действия со всем курсом. Завершить, рестарт, закрыть, изменить язык
    • Медиа - действия с медиаплеером. Воспроизвести, пауза, остановка
    • Действия модального окна - работа с модальными окнами. Открыть, закрыть, изменить
    • Открыть jsPanel - открыть jsPanel
    • Скрыть/Показать - скрыть/показать элементы на странице по селектору
    • Изменить состояние - изменить состояние настроенное в секции States
    • Изменить переменную - изменить переменную в оболочке
    • Установить процент прогресса - установить процесс прогресса в оболочке
    • Удалить переменные - удалить переменную из оболочки
    • Открыть URL - открыть страницу в браузере
    • Выполнить js код - выполнить произвольный js код
    • console.log - вывести в консоль сообщение. Добавляется в список только если включен dev режим в плагине

Настройки ниже в данной вкладке зависят от выбранного пункта "Действие".

Условие

В триггеры добавлены все три условия из ConditionManager

Опции

Обработка всех опций описана в классах Options

Опции - это действия в дополнения к триггерам:

  • Спрятать виджет после нажатия
  • Включить задержку и возможность зациклить выполнение триггера
  • Ограничить количество повторов триггера - работает на основе allowedByTriggerCounter.js
  • Отключить триггер