jQuery在删除无法正常工作的父节点上触发empty() [英] jQuery on remove not working parent node fire empty()
本文介绍了jQuery在删除无法正常工作的父节点上触发empty()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用jQuery ajax.根据答案,我删除或添加.但是jQuery.on函数不起作用.
I use jQuery ajax. According to the answer I remove or add. But jQuery.on function not working.
示例:
<div id="selector">
<span>Hello World</span>
</div>
$(document).ready(function(){
$(document).on('remove','span',function(){
alert(" first object object deleted");
});
setTimeout(function(){
$('#selector').empty();
},3000);
});
jsFiddle.net https://jsfiddle.net/1zuau1f6/5/
jsFiddle.net https://jsfiddle.net/1zuau1f6/5/
我的问题不被理解.问题我正在纠正..
edit: my question is not understood. Question I am correcting..
-更新--
我在jquery.ui框架中找到解决方案
i find solution in jquery.ui framework
$.cleanData = ( function( orig ) {
return function( elems ) {
var events, elem, i;
for ( i = 0; ( elem = elems[ i ] ) != null; i++ ) {
try {
// Only trigger remove when necessary to save time
events = $._data( elem, "events" );
if ( events && events.remove ) {
$( elem ).triggerHandler( "remove" );
}
// Http://bugs.jquery.com/ticket/8235
} catch ( e ) {}
}
orig( elems );
};
} )( $.cleanData );
推荐答案
两个问题:
1)您必须包括jquery UI库才能使用remove
事件.
1) You have to include jquery UI library to use remove
event.
2)事件委托不适用于remove
.因此使用:
2) event delegation does not work with remove
. thus use:
$('div').on('remove',function(){
alert(" first object object deleted");
});
Working Demo
这篇关于jQuery在删除无法正常工作的父节点上触发empty()的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文