40

我想在淡出后立即删除一个 DOM 元素。到目前为止我所做的是

$(element).click(function()
{
    $(this).fadeOut(500, function() { $().remove(this); });
});

但现在我总是在 Firebug 中遇到这个错误:http: //dl.getdropbox.com/u/5912/Jing/2009-02-04_1109.png

我想这是因为当回调被调用时,fadeOut 函数并没有真正完成。而且我不能$.remove()在 fadeOut 调用之后放置该部分,否则它会立即被删除。

所以你知道我有什么办法可以做得更好吗?

4

3 回答 3

109

remove()错误地使用了该功能。

$(element).click(function() {
    $(this).fadeOut(500, function() { $(this).remove(); });
});
于 2009-02-04T10:19:38.253 回答
2

为什么在这里搞砸只是使用 $('#anydiv').remove();

于 2011-02-14T08:57:13.460 回答
0

或 $.remove($(this));

于 2010-09-08T22:02:25.897 回答