#jquery #jgrowl
#jquery #jgrowl
Вопрос:
Я использую jGrowl для отображения сообщения на экране. Это выглядит великолепно. Однако после того, как сообщение исчезло, jGrowl div по-прежнему закрывает те элементы, которые находятся под ним, поэтому они недоступны для просмотра!
В моем случае это особенно заметно, потому что я отредактировал стили, чтобы убедиться, что сообщение отображается в центре экрана.
div.jGrowl.center {
height: 50%;
top: 25%;
width: 50%;
left: 25%;
}
Действительно ли может быть правдой, что такой плагин, как jGrowl, которым пользуется так много людей, имеет эту проблему? Или, возможно, это потому, что я делаю что-то неправильно.
Я проверил с помощью «Inspect element» в Chrome, и, конечно же, это тот элемент, который покрывает другие элементы на моей странице:
<div id="jGrowl" class="center jGrowl">
<div class="jGrowl-notification"></div>
</div>
ОБНОВЛЕНИЕ — Вот решение:
$("#jGrowl").show();
$.jGrowl("my message", {
beforeClose: function(e,m) {
$("#jGrowl").hide();
}
});
РАЗРАБОТКА — Попробовав разные вещи, я нахожу, что приведенное ниже является лучшим решением. Добавьте настройку по умолчанию для этих событий при загрузке страницы:
$(function () {
$.jGrowl.defaults.beforeOpen = function(e,m) { $("#jGrowl").show(); };
$.jGrowl.defaults.close = function(e,m) { $("#jGrowl").hide(); };
}
Ответ №1:
Я не знаком с jGrowl, но не могли бы вы проверить, запускается ли событие «закрыть»?
jGrowl поставляется с возможностью «закрыть» окно справа, с «X» в углу? Если вы это реализуете и нажмете «x» — сможете ли вы затем щелкнуть по элементам, которые были закрыты?
Комментарии:
1. Я ввел некоторый код «скрыть» в событие закрытия и вставил некоторый код «показать» непосредственно перед показом сообщения — это работает, хотя и не очень красиво.
Ответ №2:
В моем браузере Chrome 12.0.742.16 нет div, покрывающего все после его исчезновения. Скорее всего, вы делаете что-то неправильно, но без тестового примера я не мог сказать, что.
Комментарии:
1. Он не покрывает «все» — он покрывает только область, которую он покрывал при отображении сообщения, и небольшую область вокруг него.
2. Да, это то, что я имел в виду, в моих тестах это ничего не покрывает.
3. Странно — тогда я, должно быть, делаю что-то другое. Ну что ж, я разработал свой вопрос с решением для всех, кто каким-то образом сталкивается с той же причудой, что и я.