Покрывает ли jGrowl мои элементы после того, как он исчезнет?

#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. Странно — тогда я, должно быть, делаю что-то другое. Ну что ж, я разработал свой вопрос с решением для всех, кто каким-то образом сталкивается с той же причудой, что и я.