2011-09-10 5 views
1

메신저로 AJAX로 1 초마다 새로 고치기 위해 HTML을 얻으려고 시도했지만,이 코드는 내가 찾은 다른 웹 사이트의 비트로 만들었습니다. 임이 어떻게 작동하는지 이해하려고 노력 중입니다.AJAX 및 자동 새로 고침

브라우저에서 페이지를 새로 고치지 않고 페이지를 새로 고칠 수 있기를 원하며 JS 함수 AJAXdisplay()를 원합니다. AJAXreturn()에 보내는 변수로 1 초마다 실행합니다. 내가 부를 때.

내가 AJAXreturn()을 호출하면; AJAXdisplay()를 실행하고 싶습니다. 인덱스 파일 내가 여기이

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

</body>  

같은 뭔가를해야만 내 코드입니다하려는 경우 한 번 내 몸에, 내 PHP 파일에서 HTML을 인쇄 :

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

자바 스크립트 새로 고침을 만들려면, 당신은 사용해야합니다 setInterval(); 기능. 여기에 당신이 찾고있는 작업은 다음과 같습니다

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

그리고 혹시 새로 고침을 중지해야하는 경우 사용 :

clearInterval (timer);