Виджет генерирует ряд кастомных JavaScript-событий, которые позволяют реагировать на действия пользователя и изменения состояния баннера.
С их помощью можно, например, запускать или останавливать сторонние скрипты, сохранять логи, обновлять интерфейс сайта и выполнять другие действия в ответ на выбор пользователя.
Их можно отлавливать с помощью стандартного метода addEventListener
на объекте document
или конкретных элементах.
Доступные события:
- ic:onFirstConsent
- ic:onConsent
- ic:onChange
- ic:onModalShow
- ic:onModalHide
- ic:onModalReady
onFirstConsent
Событие возникает при первом согласии пользователя на использование cookies (принятие или отклонение).
window.addEventListener("ic:onFirstConsent", ({ detail }) => {
// detail.cookie
// do something
});
onConsent
Событие возникает при любом согласии (включая повторное) на использование cookies. Оно возникает при первом выборе пользователем (аналогично событию ic:onFirstConsent
), а также при каждой последующей загрузке страницы.
window.addEventListener("ic:onConsent", ({ detail }) => {
// detail.cookie
// do something
});
onChange
Событие возникает, когда пользователь изменяет свои настройки cookies, и только в том случае, если согласие уже было ранее дано.
window.addEventListener("ic:onChange", ({ detail }) => {
/**
* detail.cookie
* detail.changedCategories
* detail.changedServices
*/
// do something
});
onModalShow
Событие возникает, когда одно из модальных окон виджета становится видимым.
window.addEventListener("ic:onModalShow", ({ detail }) => {
/**
* detail.modalName
*/
// do something
});
onModalHide
Событие возникает, когда одно из модальных окон виджета становится скрытым.
window.addEventListener("ic:onModalHide", ({ detail }) => {
/**
* detail.modalName
*/
// do something
});
onModalReady
Событие возникает, когда модальное окно создано и добавлено в DOM.
window.addEventListener("ic:onModalReady", ({ detail }) => {
/**
* detail.modalName
* detail.modal
*/
// do something
});