创建后立即触发jQuery触发器委派
我正在尝试制作一个自动消失的通知框,通知框通过ajax加载,所以我不能使用$(document).ready();
。
我找到了我广泛使用的漂亮的.delegate()
函数,所以基本上现在ajax创建了一个新的
Stupid monkey!
并且我希望它在2秒后消失关于类定义,这是我到目前为止所得到的:
// ajax request handler jQuery('#message').append('Stupid monkey!'); jQuery('body').delegate('.fade', eventType, function() { jQuery(this).delay(2000).slideUp(500, function() { jQuery(this).remove(); }); });
无论我用什么替换eventType
,我都无法在创建元素后立即触发我的处理程序。 我已经尝试过ready
, load
和各种替代方案…… click
工作,但不是我需要的,我不能触发匿名div
的click
。
jQuery('body').delegate('.fade', eventType, function() { jQuery(this).delay(2000).slideUp(500, function() { jQuery(this).remove(); }); }); jQuery('Stupid monkey!').appendTo("#message").trigger(eventType);
你可以利用链接。 创建元素,将其附加到元素,然后在新添加的div上调用trigger。