我正在使用jGrowl在屏幕上显示一条消息。看起来不错。但是,在消息消失后​​,jGrowl div仍然覆盖了其下面的那些元素,因此它们不可单击!

就我而言,这是特别值得注意的,因为我编辑了样式以确保消息显示在屏幕的中心。

div.jGrowl.center {
    height:             50%;
    top:                25%;
    width:              50%;
    left:               25%;
}


真的有这么多人使用的jGrowl这样的插件有此问题吗?还是因为我做错了事。

我在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(); };
}

最佳答案

我对jGrowl不熟悉,但是您可以检查一下以确保“关闭”事件正在触发吗?

jGrowl具备向右“关闭”窗口的功能,并且在角落带有“ X”?如果您实现了该功能并单击“ x”,那么您是否可以单击其中涉及的项目?

10-06 06:56