效果完成后运行该功能

时间:2013-04-08 00:27:19

标签: javascript jquery

如何在效果完成后运行该功能,如延迟一段时间后延迟运行指定的功能?我尝试设置超时,它对我不起作用。

这是我的代码

<script>
    $("#findtext").keyup(function (e) {
        var code = (e.keyCode ? e.keyCode : e.which);
        if (code == 13)
        {
            explodeEffect();

        }

            $.ajax({
                url: 'resultFindFriend.php',
                type: 'post',
                async: false,
                data: { dataFriend: $(this).val() },
                success: function (data) {
                    $('.outputfindfriend').html(data);
                }
            },setTimeout(150));

    });

    function explodeEffect() {
        $("#explodesearchresult").toggle("explode");
        setTimeout(1000);
        window.location("http://localhost/index.html");
    };

    $("#buttonfriend").click(function () {
        explodeEffect();
        return false;

    });



</script>

1 个答案:

答案 0 :(得分:4)

这对jQuery的.toggle()是可行的,只需添加一个函数作为第二个参数。

试试这个:

function explodeEffect() {
  $("#explodesearchresult").toggle(400, function() {
    setTimeout(function() {
      window.location.href = "http://localhost/index.html";
    }, 1000);
  });
}

这将在爆炸效果完成后1秒重定向页面。