我试图做一个.delay()和.fadeOut()再.remove()
但是delay并fadeout没有效果remove
这是我的代码:
jQuery("#container").delegate(".remove", "click", function (e) {
e.preventDefault();
var parent = jQuery(this).data('parent');
jQuery(this).closest('.' + parent).fadeOut(1000).delay(1000).remove();
})
Run Code Online (Sandbox Code Playgroud)
为什么不
jQuery(this).closest('.' + parent).fadeOut(1000, function(){
$(this).remove()
});
Run Code Online (Sandbox Code Playgroud)
在这种情况下,您应该使用.fadeOut()提供的完整回调
jQuery("#container").on("click", ".remove", function (e) {
e.preventDefault();
var $this = jQuery(this), parent = $this.data('parent');
$this.closest('.' + parent).fadeOut(1000).delay(1000).remove();
})
Run Code Online (Sandbox Code Playgroud)