我正在尝试使用jquery中的ajaxStop函数,但是不能触发它,你有什么想法吗?
我想要做的是循环遍历每个锚标记,然后更新其中的一些内容,从那里我想使用ajaxstop事件触发一个脚本,以便根据更新重新组织锚
谢谢你的帮助
jQuery(document).ready(function($) {
function updateUsers() {
$(".twitch_user").each(function(index, user) {
$.ajax({ url: "https://api.twitch.tv/kraken/streams/" + $(user).attr("id") + "?callback=?", success: function(d) {
if(d.stream) {
$(user).addClass("online");
$(user).removeClass("offline");
$(user).children(".viewers").text(d.stream.viewers + " viewers");
} else {
$(user).addClass("offline");
$(user).removeClass("online");
$(user).children(".viewers").text("0 viewers");
}
console.log(d);
}, dataType: "json"});
});
}
//$(document).ajaxStart(function() {
// console.log("Event fired!");
// updateUsers().delay(2000);
//})
$(document).ajaxStop(function() {
console.log("Event fired!");
// updateUsers().delay(2000);
});
updateUsers();
});
发布于 2013-01-30 03:31:52
显然,全局处理程序在执行JSONP请求时被关闭,如this ticket中所述
不能保证完成
JSONP请求(因为没有捕获错误)。在这种情况下,ajax 1.5强制全局选项为false,以便保证内部jQuery请求计数器在某一时刻返回到零。
我不确定JSONP是否是您的意图,但是URL末尾的?callback=?
会让jQuery这样处理它。
解决方案是设置以下内容:
jQuery.ajaxPrefilter(function( options ) {
options.global = true;
});
https://stackoverflow.com/questions/14590367
复制相似问题