iziToast — это лёгкая и гибкая библиотека для создания уведомлений в веб-приложениях на JavaScript. Она позволяет быстро отображать сообщения различного типа с анимацией, позиционированием и настраиваемым стилем.
Подключение библиотеки осуществляется через
<script> и <link> для CSS:
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/izitoast/dist/css/iziToast.min.css">
<script src="https://cdn.jsdelivr.net/npm/izitoast/dist/js/iziToast.min.js"></script>
После подключения доступна глобальная функция
iziToast.show() и специализированные методы:
success, error, warning,
info.
iziToast.success({
title: 'Успех',
message: 'Операция выполнена успешно',
position: 'topRight'
});
topRight, topLeft, bottomRight,
bottomLeft, topCenter,
bottomCenter).true/false).light,
dark).Промо-уведомления — это сообщения, привлекающие внимание к событиям, акциям или новым функциям. Основная цель — повысить конверсию без раздражения пользователя. В iziToast их можно настраивать следующим образом:
iziToast.show({
title: 'Новая акция!',
message: 'Только сегодня скидка 20% на все товары.',
color: 'green',
position: 'topCenter',
timeout: 10000,
close: true,
buttons: [
['<button>Подробнее</button>', function (instance, toast) {
window.location.href = '/promo';
}]
]
});
Для промо-уведомлений важно выделяться визуально:
iziToast.show({
title: 'Эксклюзивное предложение',
message: 'Только для подписчиков',
color: '#ff6f61', // кастомный цвет фона
icon: 'fa fa-star', // иконка Font Awesome
position: 'topRight'
});
iziToast поддерживает добавление нескольких кнопок с обработкой кликов:
iziToast.show({
title: 'Выберите действие',
message: 'Что вы хотите сделать?',
buttons: [
['<button>Принять</button>', function (instance, toast) {
console.log('Принято');
instance.hide({ transitionOut: 'fadeOut' }, toast, 'button');
}],
['<button>Отклонить</button>', function (instance, toast) {
console.log('Отклонено');
instance.hide({ transitionOut: 'fadeOut' }, toast, 'button');
}]
]
});
iziToast предоставляет гибкий выбор анимаций:
fadeIn, bounceInLeft,
slideInRight).fadeOut, flipOutX).iziToast.show({
title: 'Анимация',
message: 'Сообщение с эффектом',
transitionIn: 'bounceInLeft',
transitionOut: 'fadeOut',
position: 'bottomLeft'
});
Позиционирование уведомлений помогает создавать промо-уведомления, которые не перекрывают важный контент, например:
iziToast.show({
title: 'Важное',
message: 'Обратите внимание на новинку!',
overlay: true,
overlayClose: true
});
iziToast.show({
title: 'Старт события',
message: 'Событие началось',
onOpening: function(instance, toast){
console.log('Открытие уведомления');
},
onClosing: function(instance, toast, closedBy){
console.log('Закрыто:', closedBy);
}
});
iziToast.show({
title: 'Приоритет',
message: 'Уведомление поверх всех',
zindex: 9999
});
Можно создавать группы промо-уведомлений с разными стилями, управлять очередью и задержкой между показами:
const messages = [
{ title: 'Скидка', message: '10% на всё' },
{ title: 'Новая функция', message: 'Добавили темную тему' }
];
messages.forEach((msg, index) => {
setTimeout(() => {
iziToast.show({
title: msg.title,
message: msg.message,
position: 'topRight'
});
}, index * 2000); // интервал между уведомлениями 2 секунды
});
Промо-уведомления могут запускаться на основе действий пользователя: клик, наведение, прокрутка страницы или завершение загрузки:
document.querySelector('#promo-btn').addEventListener('click', function() {
iziToast.show({
title: 'Спасибо!',
message: 'Вы получили бонус за клик',
position: 'topRight'
});
});
Использование iziToast позволяет создавать интерактивные, визуально привлекательные промо-уведомления, которые легко адаптируются к дизайну сайта и различным сценариям взаимодействия с пользователем.