jGrowl: Как я могу ограничить свой интерфейс одним сообщением за раз?
Дано: я загружаю очередь сообщений при загрузке страницы.
С помощью jGrowl, как я могу отображать каждое сообщение, по одному сообщению за раз, в виде капель?
3 ответа
Мне нужно было сделать это для проекта, несколько месяцев назад. Если вы используете функцию пула, доступную в последней версии jGrowl (1.2.0 на момент написания статьи), вы можете просто написать:
$.jGrowl.defaults.pool = 1;
Таким образом, вы можете загрузить их все одновременно, jGrowl позаботится о том, чтобы показывать только по одному за раз. Когда сообщение закрывается, jGrowl автоматически отображает следующее.
Я надеюсь, что это то, что вы хотели.
$.jGrowl.defaults.pool == 0;
if ($ (this.element).find ('div.jGrowl-messages:parent').size() < 0) {
В настоящее время работаю над уведомлениями на сайте, я не мог найти способ показывать по одному, пока не нашел эту страницу. Спасибо Бруно! Вы спасли меня.:)
Поскольку вы указываете временной интервал, для которого отображается сообщение (максимально), вы можете просто использовать JS setTimeout для циклического перемещения по массиву с тем же интервалом, создавая новое сообщение.
В качестве альтернативы, jGrowl может принять функцию (e,m,o) в качестве параметра закрытия и использовать ее в качестве обратного вызова всякий раз, когда сообщение закрыто. В этой функции создайте новое сообщение из своей очереди, и вы должны быть установлены. Смотрите документацию здесь.