我正在使用 .ajaxStart() 和 .ajaxStop() 函数来在 ajax 请求期间(开始和结束之间)显示一个模态框。
现在,我想添加一个长轮询函数,以类似于此网站左上角的通知一样等待通知。
现在我的问题在于仅针对长轮询请求禁用此模态框。
注册“加载屏幕”开关处理程序:
$(document).ajaxStart(handleAjaxStart);
$(document).ajaxStop(handleAjaxStop);
我的长轮询函数:
$.ajax({
timeout: 35000,
url: longPollUrl,
success: function(data){
if(data.queCount) $('#numQueCount').html(data.queCount);
if(data.queAccept) $('#numQueAccept').html(data.queAccept);
},
dataType: 'json',
complete: longpoll
});
我尝试了:
$().off('ajaxStart');
$().off('ajaxStop');
我尝试在开始轮询后重新附加处理程序,但没有成功。
我还尝试在handleAjaxStart()
中引入一个全局变量,在函数的第一行返回,但似乎完全消除了加载屏幕。
有什么想法可以实现这个功能吗?
ajaxComplete()
、ajaxError()
、ajaxSend()
、ajaxStart()
、ajaxStop()
和ajaxSuccess()
,而不仅仅是Start和Stop。 - XstiX