我目前有以下代码,它将运行一堆 ajax 请求(40-50),然后再次执行它们。(所以基本上永远做他们)
代码:
$(document).ready(function () {
window.setInterval(function () {
$('div.env').each(function (index, item) {
var vm = $(item).text();
var env = "http://localhost:56656/HTML" + vm + ".htm";
$.ajax(env, {
async: false,
URL: env,
type: "GET",
dataType: "html",
success: function (data) {
//alert("Colouring");
var style = $(data).filter('div').attr('style');
var styleObj = {};
$.each(style.split(';'), function () {
var rule = this.split(':');
styleObj[$.trim(rule[0])] = $.trim(rule[1]);
});
$(item).css('background', styleObj.background);
},
error: function () {
$(item).css('background', '#f00');
}
});
});
}, 10000);
});
如您所见,我目前正在使用超时,它在 IE 上运行特别慢,有时在 chrome 上运行缓慢。当我说慢时,我的意思是所有 ajax 请求都将完成,然后屏幕将刷新更新。在 IE 上一直都是这种情况,偶尔在 Chrome 上也是如此。理想情况下,我希望 ajax 执行它的请求,更新然后执行下一个 ajax 请求。
有更好的方法来不断地执行 AJAX 请求吗?
提前谢谢你,詹姆斯