我不明白为什么fadeOut有效,但remove无效。我发现这是数组的问题。我尝试了一些组合,但无法使其正常工作。
for (var i=0;i<fieldsblock.length;i++){
$("#"+fieldsblock[i]+"_tr"+nid).fadeOut();
t=setTimeout(function(){$("#"+fieldsblock[i]+"_tr"+nid).remove();},400);
}
谢谢。
最佳答案
看起来您只需要remove
一旦fadeOut
完成就可以运行。如果是这种情况,则无需使用setTimeout
。您可以改用回调:
for (var i=0;i<fieldsblock.length;i++){
$("#"+fieldsblock[i]+"_tr"+nid).fadeOut(function() {
$(this).remove();
});
}
每当动画完成时都会执行该回调,因此,如果您也想更改淡入淡出的持续时间,则这样做就不必更改
setTimeout
持续时间。