我有一个以下代码来在页面完全加载时隐藏页面加载器图像(包括任何挂起的ajax调用)。
$('document').ajaxStop(function() {
// place code to be executed on completion of last outstanding ajax call here
$(".se-pre-con").fadeOut("slow");
});
工作正常。但是,网站上的某些页面没有ajax调用,并且此代码不在那里运行 所以我需要一个代码来首先检查当前页面上是否有任何ajax调用,如果是,然后检查它是否已完成,然后运行此代码以隐藏加载图像。
答案 0 :(得分:1)
如果您默认隐藏加载程序,然后使用ajaxStart
显示它,并再次隐藏ajaxStop
,它应该执行您想要的操作(我认为)
.se-pre-con { display : none; }
和
$(document).ajaxStart(function() {
$(".se-pre-con").show();
}).ajaxStop(function() {
$(".se-pre-con").fadeOut("slow");
});
答案 1 :(得分:0)
是的,您可以使用像这样的
var jqxhr = $.ajax( "example.php" )
// if success
.done(function() {
alert( "success" );
})
// if failed
.fail(function() {
alert( "error" );
})
// or use always for completed request
.always(function() {
alert( "complete" );
});
希望这有帮助:)