在jQuery中减慢location.reload()的速度?

时间:2012-12-14 17:43:09

标签: javascript show-hide jquery

有没有办法放慢location.reload()

目前我在某些地方使用.toggle("slow"),在其他地方使用.hide("slow")来显示模态动画。其中一个函数调用刷新但动画在重新加载之前未完成。它开始并中途完成然后被切断。我喜欢让它等到动画结束然后重新加载。

$(".modal-box button").click(function(){
    $(".modal-box").hide("slow");
    if ($(this).is("#reset")){
        location.reload();
    }
});

3 个答案:

答案 0 :(得分:3)

您应该做的是为动画定义一个回调函数,该动画将在动画实际完成时运行。

$(".modal-box button").click(function(){
    var self = this; //keep the correct scope
    $(".modal-box").hide("slow", function() {
        if ($(self).is("#reset")){
            location.reload();
        }
    });   
});

答案 1 :(得分:3)

$(".modal-box button").click(function(){
    var self = this;
    $(".modal-box").hide("slow", function(){
        if ($(self).is("#reset")){
            location.reload();
        }
    });
});

答案 2 :(得分:1)

让它成为动画的回调:

$(".modal-box").hide('slow', location.reload);