我有一个.load()函数,我需要转换为.ajax()。我最初使用.load()因为它易于使用,但现在我看到为了达到我想要的结果,我必须使用.ajax()。 这是我的.load()函数:
$("#rightframe").click(function(){
$("#screen").load("form.html #contact");
});
我想将其转换为.ajax()并添加以下代码来设置.ajax()调用所需的最短时间(这是因为我有一个加载GIF,如果它没有看起来很奇怪跑得够久)
所以当我试图找出如何设置加载GIF所需的最小时间时,我发现了this段代码。
var counter = 2;
function decrement() {
if (--counter == 0) {
$('#loader').hide();
}
}
setTimeout(decrement, 1000);
$.ajax(..., complete: decrement);
有谁知道如何将.load()函数更改为.ajax()并将减量函数添加到.ajax()函数中?
谢谢,
凯蒂
答案 0 :(得分:2)
我想你想要这样的东西:
$("#rightframe").click(function () {
$("#loader").show();
setTimeout(function () {
$.ajax({
url: "form.html",
complete: function () {
$("#loader").hide();
},
success: function (data) {
$("#screen").empty().append($(data).find("#contact"));
},
error: function () {
// Handle an error occurring
}
});
}, 2000);
});
我不确定你为什么使用/需要decrement
函数,但像这样的代码应该处理加载图像显示的时间足够长。