2011-09-10 75 views
1

即時通訊嘗試獲得一點點的HTML,每1秒刷新AJAX,我用自己的代碼來自不同的網站,我發現自己的代碼。我試圖瞭解它是如何工作的。AJAX和自動刷新

我希望能夠刷新頁面,而無需重新加載它在瀏覽器中,我希望JS函數AJAXdisplay();使用我發送給AJAXreturn()的變量每運行一秒鐘;當我打電話時。

當我調用AJAXreturn();我希望它運行AJAXdisplay();一次從我的PHP文件打印出來的HTML,在我身上,如果索引文件我想這樣的

<body onClick=:AJAXdisplay(same variables as used when the page was made);">    

</body>  

這裏的財產以後是我的代碼:

function getHTTPObject(){ 
if (window.ActiveXObject) { 
    return new ActiveXObject("Microsoft.XMLHTTP"); 
} 
if (window.XMLHttpRequest){ 
    return new XMLHttpRequest(); 
} 
else { 
    alert("Your browser does not support AJAX."); 
    return null; 
} 
} 

function AJAXsend(url) { 
httpObject = getHTTPObject(); 
if (httpObject != null) { 
    httpObject.open("POST",url); 
    httpObject.send(null); 
} 
} 

function AJAXreturn(url,pageName){ 
httpObject = getHTTPObject(); 
if (httpObject != null) { 
    if (navigator.appName != "Microsoft Internet Explorer") { 
     history.replaceState("", "", "index.php?page=" + pageName) 
    } 
    httpObject.open("POST",url); 
    httpObject.send(null); 
    AJAXdisplay(httpObject,url,pageName); 
} 
} 

function AJAXdisplay(httpObjectIn,urlIn, pageNameIn){ 
httpObjectIn.onreadystatechange = function(){ 
    if(httpObjectIn.readyState == 4){ 
     document.getElementById('outputHTML').innerHTML = httpObjectIn.responseText; 
     AJAXdisplay('function(httpObjectIn,urlIn,pageNameIn)',1000); 
    } 
} 
} 
+0

russell.selfip.net是它現在 –

+0

也許我必須把所有這一切都成一個功能? –

回答

2

在JavaScript中刷新,你應該使用功能setInterval();。這是你找什麼:

var timer = setInterval ("AJAXdisplay(variable);", 1000); 

而且如果你需要停止刷新你使用:

clearInterval (timer);