我有一个通知设置,可以通过AJAX调用从数据库中逐步检索通知。
如果通知是新的,那么我想在包含通知的元素中添加jQuery UI“突出显示”效果。
对于不同的通知类型,有很多这些。
在加载通知时,包含通知数据的元素在需要时提供新类“flashAlert”。然后触发以下功能。
function startAlert() { // this function makes alerts flash
setInterval(function () {
$('.flashAlert').effect("highlight", {}, 2500);
}, 2500);
};
但是,如果从元素中删除类“flashAlert”(由“清除通知”功能完成),则仍然会应用效果。
我知道我可以在“清除通知”功能中调用clearInterval
,但是我必须为每个通知设置一个单独的Interval函数,而不是像这样的单个函数。
我已经在这里看到了其他问题,用户发现难以对jQuery添加的元素进行处理,但没有关于删除效果的内容!
重新加载页面会清除它,但这不是我想要的!
答案 0 :(得分:0)
function startAlert(){
$('.flashAlert').effect("highlight", {}, 2500, startAlert);
}
如果您希望它在明确的通知中停止,只需执行以下操作:
$('.flashAlert').removeClass("flashalert").stop();