试图使一些div fadeOut然后被删除

时间:2012-07-14 01:08:52

标签: jquery fadeout

我正在尝试制作一些div fadeOut然后被移除。

$("article.articles .thumb a").click(function() {
    $(this).parent().parent().addClass("selected");
    $("article.post").not(".selected").fadeOut(500).delay(1500).remove();
    $('#stream').isotope('reLayout');
});

但是这些div会立即删除而不会褪色。

我做错了什么?

3 个答案:

答案 0 :(得分:1)

你可以使用在淡入淡出效果完成后执行的fadeOut()回调函数。

  

.fadeOut([duration] [,callback])

$("article.post").not(".selected").fadeOut(500, function(){
   $(this).remove();
})

或:

$("article.post").not(".selected").fadeOut(500).delay(2000).queue(function(){
   $(this).remove()
})

答案 1 :(得分:0)

$("article.articles .thumb a").click(function() {
    $(this).parent().parent().addClass("selected");
    $("article.post").not(".selected").fadeOut(500, function(){
    setTimeout(function(item){ 
      jQuery(item).remove(); }, 1500, $(this));
});
    $('#stream').isotope('reLayout');
});

答案 2 :(得分:0)

在删除div之前,你不是在等待div淡出。您需要创建一个回调函数并在其中调用remove。

使用此代码段 -

   $("article.post").not(".selected").fadeOut(500, function(){
                            $("article.post").not(".selected").remove();
                        });