使用 jquery 选择器检测 pnotify 的显示或加载
Detect display or loading of pnotify with a jquery selector
我正在为使用 pnotify 1.2.0 版的应用程序编写扩展。核心应用程序创建一个 pnotfy 警报,我希望我的代码对该警报的创建做出反应。这是一个专有的扩展框架,它允许我添加自己的 JS,并且在加载主应用程序自己的 JS 之后加载该 JS。该扩展模型的相关性仅在于它意味着我不能只做一些理智的事情,比如修改原始调用代码;我必须对次要事件做出反应。
我试过使用 jquery 和这样的加载事件:
$('div.ui-pnotify-text').on('load', function() {
console.log('detected pnotify creation, doing stuff...');
});
我试过以下选择器:
div.ui-pnotify-container
div.ui-pnotify-text
这些选择器在 pnotify 气泡弹出后起作用,但加载事件似乎没有触发。我怀疑我使用了错误的选择器或者我误解了 jQuery 事件模型。
我还查看了 pnotify_remove_all
方法,该方法表明我可以使用 $(window).data("pnotify")
获取所有活动 pnotify 对象的列表。与选择器一样,这在所有内容都已加载后在浏览器控制台中工作,但不是来自 JS 代码。
如何使用 jquery 可靠地检测 pnotify 气泡的创建?
如果不是jquery,有没有我可以使用的内置 pnotify 机制?
我做了一些额外的实验。我根本不认为这是可能的。 pnotify 元素和 类 的选择器的各种组合可以找到这些元素,但是当它们呈现或可见时,没有为加载、显示或隐藏触发的事件。
var notice = new PNotify({
title: 'Mesaj',
text: '<p>' + item.Message + '</p>',
hide: false,
width: '220px',
addclass: "notice_" + item.Id,
type: 'success'
});
当 pnotify 处于活动状态时,您可以使用以下代码访问它。给addclass取个名字给自己起个名字就可以找到弹窗消息了
if ($(".notice_" + item.Id).length == 0) {
...
}
我的英语不是很好。对不起。希望我没有弄错问题。
我正在为使用 pnotify 1.2.0 版的应用程序编写扩展。核心应用程序创建一个 pnotfy 警报,我希望我的代码对该警报的创建做出反应。这是一个专有的扩展框架,它允许我添加自己的 JS,并且在加载主应用程序自己的 JS 之后加载该 JS。该扩展模型的相关性仅在于它意味着我不能只做一些理智的事情,比如修改原始调用代码;我必须对次要事件做出反应。
我试过使用 jquery 和这样的加载事件:
$('div.ui-pnotify-text').on('load', function() {
console.log('detected pnotify creation, doing stuff...');
});
我试过以下选择器:
div.ui-pnotify-container
div.ui-pnotify-text
这些选择器在 pnotify 气泡弹出后起作用,但加载事件似乎没有触发。我怀疑我使用了错误的选择器或者我误解了 jQuery 事件模型。
我还查看了 pnotify_remove_all
方法,该方法表明我可以使用 $(window).data("pnotify")
获取所有活动 pnotify 对象的列表。与选择器一样,这在所有内容都已加载后在浏览器控制台中工作,但不是来自 JS 代码。
如何使用 jquery 可靠地检测 pnotify 气泡的创建?
如果不是jquery,有没有我可以使用的内置 pnotify 机制?
我做了一些额外的实验。我根本不认为这是可能的。 pnotify 元素和 类 的选择器的各种组合可以找到这些元素,但是当它们呈现或可见时,没有为加载、显示或隐藏触发的事件。
var notice = new PNotify({
title: 'Mesaj',
text: '<p>' + item.Message + '</p>',
hide: false,
width: '220px',
addclass: "notice_" + item.Id,
type: 'success'
});
当 pnotify 处于活动状态时,您可以使用以下代码访问它。给addclass取个名字给自己起个名字就可以找到弹窗消息了
if ($(".notice_" + item.Id).length == 0) {
...
}
我的英语不是很好。对不起。希望我没有弄错问题。