这是无效的代码:
$(document).ajaxStop(function() {
$(this).unbind("ajaxStop"); //prevent running again when other calls finish
// Display everything
display();
});
Run Code Online (Sandbox Code Playgroud)
这是我的Ajax功能:
function getAjax(url, callback) {
jQuery.ajaxPrefilter(function( options ) {
options.global = true;
});
$.ajax({
url: url,
type: "GET",
dataType: "jsonp",
success: callback
});
}
Run Code Online (Sandbox Code Playgroud)
为什么ajaxStop()永远不会开火?
您会注意到我正在制作JSONP请求.我花了很长时间才找到这个,但是这个问题的答案可以在这里找到.
从机票:
JSONP请求无法保证完成(因为未捕获错误).在这种情况下,jQuery 1.5强制全局选项为false,以便保证内部ajax请求计数器在某一点或另一点恢复为零.
如果您希望所有请求都触发事件,无论是什么(并且存在相同的1.4.4不一致的风险),您可以使用以下预过滤器:
jQuery.ajaxPrefilter(function( options ) {
options.global = true;
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1431 次 |
| 最近记录: |