Переход с Jquery jGrowl на собственный модуль hotengine_notify
В рамках стратегии по повышению производительности, была произведена полная замена JQuery jGrowl на чистый JavaScript.
Новый модуль hotengine_notify — это наше собственное решение, которое полностью сохраняет привычную логику уведомлений, но избавляет проект от лишних зависимостей и тяжелых библиотек.
- Скорость: Отсутствие JQuery делает инициализацию уведомлений мгновенной.
- Вес: Код модуля сокращен в несколько раз по сравнению с оригинальным плагином.
- Нативность: Полная поддержка современных стандартов ES6+.
Гайд для разработчиков и интеграторов
Функционал hotengine_notify полностью идентичен jGrowl. Если вы использовали кастомные вызовы в своих скриптах, вам достаточно просто сменить имя функции. Все ключевые параметры (life, header, sticky, theme) работают по прежней схеме.
Примеры реализации
1. Базовый вызов (Информационное сообщение)Простое уведомление, которое исчезнет автоматически через 3 секунды.
hotengine_notify('Изменения успешно сохранены');
2. Важное уведомление (Sticky Error)
Используйте тему error для критических ошибок. Такое сообщение не закроется, пока пользователь не нажмет на крестик.
hotengine_notify('Ошибка доступа к разделу', {
header: 'Системное прерывание',
theme: 'error',
sticky: true
});
3. Использование Callback-функций
Теперь вы можете легко выполнять код при закрытии уведомления через beforeClose. Это полезно для работы с куки или отправки статистики.
hotengine_notify('У вас новое уведомление', {
beforeClose: function(el, msg) {
// Пример: ставим куку о прочтении на 24 часа
document.cookie = "notify_read=1; path=/; max-age=86400;";
}
});
Локализация интерфейса
Мы вынесли все текстовые элементы (например, кнопку «Закрыть все») в CSS. Модуль автоматически определяет язык страницы через атрибут lang в теге HTML. На данный момент поддерживаются:
- RU: [ Закрыть все ]
- UK: [ Закрити все ]
- PL: [ Zamknij wszystko ]
- EN: [ Close all ]
Hotlist.biz — работаем над скоростью, чтобы вы работали над результатом.