如何在执行代码之前等待slideToggle完成?

时间:2010-01-09 15:50:57

标签: javascript jquery effects

我想在执行slideToggle语句和if效果之前等待fadeIn效果完成。

div_to_move = $(this).parents("div.kind_div");

div_to_move.slideToggle();
if ($(this).html() == "+") {
    $(this).html("-");
    $("div.kind_to", td).append(div_to_move);
} else {
    $(this).html("+")
    $("div.kind_from", td).append(div_to_move);
}
div_to_move.fadeIn();

我该怎么办?

1 个答案:

答案 0 :(得分:5)

您可以向slideToggle添加回调:

var div_to_move = $(this).parents("div.kind_div");

div_to_move.slideToggle(400, function () {
    if ($(this).html() == "+") {
        $(this).html("-");
        $("div.kind_to", td).append(div_to_move);
    } else {
        $(this).html("+")
        $("div.kind_from", td).append(div_to_move);
    }
    div_to_move.fadeIn();
});