大家好,这是我的代码:
var ajax={
chiamata:function(target,url,opzioni){
if (!tools.array_key_exists('caricamento',opzioni)){
opzioni['caricamento']=1;
}
var dati=url.split('?');
$.ajax({
type: opzioni['type'],
url: url,
contentType:"application/x-www-form-urlencoded; charset=UTF-8",
data: dati[1],
dataType: "html",
success: function(msg){
if (opzioni['caricamento']!=0){
ajax.printLoading();
}
$(target).html(msg);
},
error: function(){
alert("Chiamata fallita!");
}
})
},
printLoading:function(){
var body="#colonnaDX";
$(body).ajaxStart(function(){
$(body).append('<div id="loading"><img src="graphic/IMAGE/spinner.gif"/>Loading...</div>');
})
.ajaxStop(function(){
$('#loading').remove();
});
}
},
//Recursive function
var object={
checkAzione:function(target,url,opzioni,interval){
if (!interval)
interval=60000;
ajax.chiamata(target,url,opzioni);
setTimeout(function() {
this.checkAzione(target,url,opzioni,interval);
}, interval);
}
}
$(document).ready(function(){
object.checkAzione(
'#colonnaDX',
'someactions.php',{
'caricamento':0
},
10000
);
})
我会尽力解释这个问题,当文档准备好时,函数“checkAzione”启动,它会做一些事情,比如 DB 调用等,这种 ajax 调用不需要像 spinner 这样的任何视觉加载等等,所以在数组“opzioni”中,我设置了一个标志“caricamento”:0(与“加载”:0 相同)只需检查我的 ajax 对象以了解我的意思,它可以工作,直到我使用“caricamento”进行一些 ajax 调用:1,从那一刻起,我的递归函数中的每个 ajax 调用都会使“printLoading”...任何提示????