jQuery插件以显示;“装载”;在等待AJAX响应时

jQuery插件以显示;“装载”;在等待AJAX响应时,jquery,jquery-plugins,Jquery,Jquery Plugins,我已经编写了一些jqueryajax代码,当下拉选项更改时,我将向服务器发送一个请求。基于此更改,4或5个文本字段更改其数据,并加载大量新图像。一切都感觉很好 但我想知道jQuery是否提供了一个插件,它会使页面变暗……在服务器返回请求之前,快速显示“加载”或微调器?我记得在附近看到过一个,但没能找到 有两个对象可以传递给通用ajax对象,分别是ajaxStart和ajaxStop。这些是事件处理程序,在发送和接收ajax查询时触发 ajaxStart(全球活动) 如果Ajax请求已启动且当前未

我已经编写了一些jqueryajax代码,当下拉选项更改时,我将向服务器发送一个请求。基于此更改,4或5个文本字段更改其数据,并加载大量新图像。一切都感觉很好


但我想知道jQuery是否提供了一个插件,它会使页面变暗……在服务器返回请求之前,快速显示“加载”或微调器?我记得在附近看到过一个,但没能找到

有两个对象可以传递给通用ajax对象,分别是
ajaxStart
ajaxStop
。这些是事件处理程序,在发送和接收ajax查询时触发

ajaxStart(全球活动)
如果Ajax请求已启动且当前未运行其他Ajax请求,则广播此事件

ajaxStop(全球活动)
如果不再处理Ajax请求,则会触发此全局事件

考虑到这一点,设置您的目标相当容易:

$("#loading").bind("ajaxStart", function(){
    $(this).show();
}).bind("ajaxStop", function(){
    $(this).hide();
});
只要让你的
#加载
div就可以了——看看众多的lightbox插件,或者实现一些你想要的东西

当然,你可以设置它做任何你想做的事情,但是一旦在你的脚本顶部设置好了,它就被设置好了

如果您使用的是BlockUI插件,那么您需要做的就是:

$().ajaxStart($.blockUI).ajaxStop($.unblockUI);

我建议使用jqueryajax事件方法ajaxStart()和ajaxComplete()