Я использую jQuery во внешнем интерфейсе для отправки ajax-запроса, а анонимный - для рекурсивного обратного вызова, и он отлично работает в Google Chrome и Mozilla, а также в Safari, давая мне время ожидания запроса.
вот мой фрагмент кода
var ajaxVal=function(i){
var obj={
clientName: clientName,
accessType:accessType,
processProgress:processList[i]
}
$.ajax({
url: 'Url.html',
type: 'POST',
async:true,
data:{
reqData:JSON.stringify(obj)
},
async: false,
success: function (result) {
var data=JSON.parse(result);
if(i==processList.length-1){
if(finalFlag){
$('#statusModal .popUp-text').text("Client Created Successfully.");
$('#statusModal .popUp-text').addClass("success");
$("#statusModal").modal('show');
}
});
}, 1000);
}else if(data.success==true|| data.success=="true"){
var Progresschart=eachProgressList*(i+1);
$("#myBar").animate({width: Progresschart+"%" }, "slow",function(){
if(jVal<processList.length){
jVal++;
ajaxVal(jVal);
}
});
}else{
setTimeout(function () {
$('#statusModal .popUp-text').text("Client Creation Fail.");
$('#statusModal .popUp-text').addClass("fail");
$("#statusModal").modal('show');
finalFlag=false;
}, 1000);
}
},error: function(){
},timeout: 30000
});
}
ajaxVal(jVal);