Библиотека iziToast предоставляет гибкие возможности управления уведомлениями, включая массовое закрытие всех сообщений на странице. Это особенно полезно в динамических интерфейсах, где необходимо быстро очистить экран от множества уведомлений.
iziToast.destroy()Основным инструментом для закрытия всех уведомлений является
статический метод destroy(). Его использование полностью
удаляет с DOM все активные уведомления, независимо от их типа, позиции
или состояния анимации.
Синтаксис:
iziToast.destroy();
Метод не требует передачи аргументов. Он выполняет следующие действия:
Пример использования:
// Создание нескольких уведомлений
iziToast.success({
title: 'Успех',
message: 'Операция выполнена успешно!'
});
iziToast.info({
title: 'Информация',
message: 'Здесь полезное сообщение.'
});
// Закрытие всех уведомлений через 3 секунды
setTimeout(() => {
iziToast.destroy();
}, 3000);
В данном примере после задержки все уведомления исчезают одновременно, вне зависимости от того, сколько их было создано.
По умолчанию iziToast создает уведомления в контейнерах с классом
iziToast. Можно управлять закрытием уведомлений выборочно,
используя методы удаления внутри конкретного контейнера.
Пример: закрытие уведомлений в конкретной позиции:
// Уведомления в верхнем правом углу
iziToast.show({
title: 'Верхний правый угол',
message: 'Сообщение',
position: 'topRight'
});
// Закрытие всех уведомлений в topRight
document.querySelectorAll('.iziToast-wrapper.topRight').forEach(wrapper => {
wrapper.remove();
});
Такой подход позволяет более точно контролировать интерфейс и закрывать уведомления только в нужной позиции.
timeoutКаждое уведомление может быть настроено на автоматическое
исчезновение через заданное время. Это не является «закрытием всех
уведомлений», но в сочетании с destroy() позволяет гибко
управлять их жизненным циклом.
Пример:
iziToast.info({
title: 'Авто-закрытие',
message: 'Это уведомление исчезнет через 5 секунд',
timeout: 5000
});
Использование timeout удобно для уведомлений, которые не
требуют немедленного вмешательства пользователя, а массовое закрытие
можно оставить для событий, таких как смена страницы или переход между
вкладками.
Для сложных интерфейсов можно сочетать методы закрытия с опциями анимации, чтобы плавно скрывать уведомления, а затем полностью уничтожать контейнеры.
Пример:
// Плавное скрытие с анимацией fadeOut
iziToast.show({
title: 'Скрытие',
message: 'С анимацией',
transitionOut: 'fadeOut',
timeout: false
});
// Закрытие всех уведомлений через 2 секунды
setTimeout(() => {
iziToast.destroy();
}, 2000);
Здесь уведомления сначала анимируются, а затем полностью удаляются
методом destroy().
destroy()position) и
селекторами контейнеров можно создать гибкую систему управления
уведомлениями для различных разделов интерфейса.