gpt4 book ai didi

jquery - jGrowl - 限制为单个消息

转载 作者:行者123 更新时间:2023-12-01 01:17:28 24 4
gpt4 key购买 nike

我正在使用 jGrowl 来显示消息和警报,我正在使用的日期选择器会在短时间内连续触发 .change() 函数三次,这意味着每次您选择日期/时间时都会显示三条消息,我我想将其限制为只有一个。

我尝试过$.jGrowl.defaults.pool = 1;但不幸的是这只会导致消息堆叠,而不是实际上只显示一条消息。

这是我正在使用的代码,尽管进行了检查,目前它仍然显示 3 条消息:

if($('.jGrowl-notification').length == 0) {
jGrowl('message');
} else {
if ( $('.jGrowl-notification').not(':visible') ) {
jGrowl('message');
}
}

(第一次显示消息时,会创建 .jGrowl-notification div,然后当消息超时时隐藏)

任何帮助将不胜感激,谢谢

最佳答案

可以尝试类似的东西(未经测试)

jGrowl('message',{beforeOpen: function() {
if($('.jGrowl-notification').is(':visible')) {
return false;
}
}
});

jGrowl 查看 beforeOpen 和 beforeClose 的 return 语句,返回 false 则停止继续。

另一种可能的方法是记录咆哮是否对该输入开放,如下所示。

$('#yourPicker').change(function() {
if($(this).data('hasExisting') == 0) {
jGrowl('message',{
open: function() {
$('#yourPicker').data('hasExisting',1);
},
close: function() {
$('#yourPicker').data('hasExisting',0);
}
});
}
});

这种方式在输入中存储一个值,以确定当前是否有一个咆哮声在它尝试将另一个咆哮声排队之前打开。

关于jquery - jGrowl - 限制为单个消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11020085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com