Библиотека iziToast предоставляет гибкий механизм
отображения уведомлений с поддержкой наложения (overlay).
Наложение представляет собой затемнённый или прозрачный слой, который
перекрывает основное содержимое страницы, акцентируя внимание на
уведомлении и блокируя взаимодействие с другими элементами до закрытия
тоста. Управление наложением осуществляется через специальные параметры
при вызове уведомления и глобальные настройки.
Параметр overlay отвечает за включение или отключение
затемнения фона:
iziToast.show({
title: 'Внимание',
message: 'Это уведомление с наложением',
overlay: true
});
overlay: true — активирует затемнение
всего экрана.overlay: false — уведомление
отображается без затемнения.Наложение по умолчанию отключено. Этот параметр можно задавать как
при отдельном вызове уведомления, так и глобально через
iziToast.settings().
Цвет и прозрачность наложения управляются через свойства
overlayColor и overlayOpacity:
iziToast.show({
title: 'Информация',
message: 'Пользователь должен обратить внимание',
overlay: true,
overlayColor: 'rgba(0, 0, 0, 0.6)',
overlayOpacity: 0.8
});
overlayColor — задаёт цвет наложения,
поддерживаются любые CSS-значения (hex, rgba,
hsla, color name).overlayOpacity — управляет
прозрачностью наложения (0 — полностью прозрачное, 1 — полностью
непрозрачное).Важно учитывать, что прозрачность в overlayColor и
overlayOpacity комбинируется. Например,
rgba(0,0,0,0.5) и overlayOpacity: 0.5 создадут
более тёмный эффект.
Наложение автоматически закрывается при закрытии уведомления. Методы управления:
timeout:iziToast.show({
title: 'Автозакрытие',
message: 'Наложение исчезнет вместе с уведомлением',
overlay: true,
timeout: 5000
});
const toast = iziToast.show({
title: 'Закрытие вручную',
message: 'Нажмите кнопку для закрытия',
overlay: true,
close: false
});
// Позднее закрытие
iziToast.destroy(toast);
iziToast.destroy() гарантирует удаление уведомления и
наложения одновременно.
Если на странице отображаются несколько уведомлений с
overlay: true, библиотека создаёт только одно наложение.
Оно останется активным, пока хотя бы одно уведомление с наложением не
будет закрыто. Это предотвращает наложение нескольких тёмных слоёв, что
улучшает UX.
iziToast.show({ title: 'Первое', overlay: true });
iziToast.show({ title: 'Второе', overlay: true });
При закрытии второго уведомления наложение исчезнет только после закрытия первого.
Параметр overlayClose контролирует возможность закрытия
уведомления кликом по затемнённой области:
iziToast.show({
title: 'Закрытие кликом',
message: 'Можно закрыть уведомление, кликнув по фону',
overlay: true,
overlayClose: true
});
overlayClose: true — клик по наложению
закрывает уведомление.overlayClose: false — наложение
блокирует взаимодействие, клик игнорируется.Это особенно полезно для модальных уведомлений, требующих обязательного действия пользователя.
Для единообразного применения параметров наложения ко всем уведомлениям можно использовать глобальные настройки:
iziToast.settings({
overlay: true,
overlayColor: 'rgba(50, 50, 50, 0.7)',
overlayClose: true
});
После такой конфигурации все последующие вызовы
iziToast.show() будут автоматически использовать наложение
без необходимости повторного указания параметров.
Наложение можно комбинировать с различными позициями
(position) и типами уведомлений (success,
error, info, warning). Например,
для модального предупреждения:
iziToast.warning({
title: 'Предупреждение',
message: 'Данное действие невозможно отменить',
overlay: true,
overlayClose: false,
position: 'center',
timeout: false
});
Такое уведомление останется на экране до явного закрытия пользователем, при этом фон будет затемнён, предотвращая случайное взаимодействие с другими элементами страницы.
overlayClose для улучшения интерактивности
модальных уведомлений.Эти подходы позволяют создавать гибкую и управляемую систему уведомлений с наложением, соответствующую современным требованиям UX.