我使用ajaxStart
和ajaxStop
以这种方式显示和隐藏加载:
$(document).ajaxStart(function () {
$.LoadingOverlay("show", {
fade:[100,100]
});
});
$(document).ajaxStop(function () {
$.LoadingOverlay("hide", {
fade: [100, 100]
});
});
此代码有效。但有时ajaxStop
功能没有触发,您必须按F5键重新加载页面。因为显示从ajax 开始加载并没有隐藏。
我找不到问题。
我的jQuery
版本是2.2.4。
更新
我用ajaxComplete
而不是ajaxStop
但是,也有同样的问题。
$(document).ajaxStart(function () {
$.LoadingOverlay("show", {
fade:[100,100]
});
});
$(document).ajaxComplete(function () {
$.LoadingOverlay("hide", {
fade: [100, 100]
});
});
还有什么有用的吗?
使用ajaxComplete
ajaxComplete会在 ajax 请求完成时调用,无论是成功还是错误。
当所有 ajax 请求完成时调用ajaxStop。因此,与 ajaxComplete 不同的是,如果仍有正在进行的请求,则不会调用它。
如果您要为每个 ajax 请求执行操作,您应该使用第一个。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句