fadeOut()在另一个函数中完成后执行一个函数

时间:2013-08-29 13:57:39

标签: jquery

我正在创建一个页面,我创建了两个函数:一个用于fadeOut-fadeIn,另一个用于更改布局视图。

我想仅在fadeOut-fadeIn函数完成时更改视图。

$someTarget.click(function(){
//all actions here once the below function done
});

$someTarget2.click(function(){
    $subtarget.fadeOut();
    $subtarget.fadeIn();
});

4 个答案:

答案 0 :(得分:0)

$(subtarget).fadeOut(function(){
   $(someTarget).trigger('click');
});

编辑:

$someTarget.live(‘click’, function(){
//all actions here once the below function done
});

$someTarget2.click(function(){
    $subtarget.fadeOut(function(){
       $subtarget.fadeIn(function(){
           $someTarget.trigger('click');
       });
    });
});

答案 1 :(得分:0)

您可以链接您的驱动程序函数,然后使用回调组件:

$someTarget2.click(function(){
    $subtarget
        .fadeOut()
        .fadeIn(function(){
            $someTarget.click(function(){
                // magic actions here
            }); 
        });
});

或者只是触发点击组件:

$someTarget2.click(function(){
    $subtarget
        .fadeOut()
        .fadeIn(function(){
            $someTarget.trigger('click');
        });
});

就像抬头一样,你编写.fadeIn和。fadeOut部分的方式意味着它们会同时运行...如果你想像“闪光”一样事情(我认为你想要的是什么?)你需要将它们链接起来以便顺序运行。

答案 2 :(得分:0)

您可以使用fadeInfadeOut

中的回调
$someTarget2.click(function(){
    $subtarget.fadeOut("fast", function() {
        $subtarget.fadeIn("fast", function() {
            //done fading in, change your view here
        });
    });

});

答案 3 :(得分:0)

$someTarget2.click(function(){
    $someTarget.fadeOut('slow').fadeIn('slow',function(){
       // change view here
    });
});