2012-05-17 2 views
1

나는 3 초마다 chatbox를 업데이트하고 overflow div (chatbody)를 가진다. 내가 evry 반복이 함수 스크롤 div 하단 싶지 않아?자동 스크롤 chatbox

내 코드

function chat() 
{ 
var xmlhttp; 
if (window.XMLHttpRequest) 
    {// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
    } 
else 
    {// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    xmlhttp.onreadystatechange=function() 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
    document.getElementById("chatbody").innerHTML=xmlhttp.responseText; 
I THINK CODE MUST BE HERE 
    } 
    } 
    xmlhttp.open("GET","func/chat.php?tnow=" + (new Date()).getTime(),true); 
xmlhttp.send(); 
} 
setInterval("chat()",3000); 
+1

채팅 앱에 http://nodejs.org/를 사용하십시오. 그것의 좋은 – Imdad

+1

당신은 chatbody을 마지막 자식 오프셋 + 높이의 scrollTop으로 설정해야합니다. – Sergey

+0

나는 자동 스크롤 코드를 원하지 않는다. webserver js –

답변

1
function chat() 
{ 
var xmlhttp; 
if (window.XMLHttpRequest) 
    {// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
    } 
else 
    {// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    xmlhttp.onreadystatechange=function() 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
    document.getElementById("chatbody").innerHTML=xmlhttp.responseText; 
    document.getElementById("chatbody").scrollTop = document.getElementById("chatbody").scrollHeight; //This scrolls the chatbox to the bottom/last 
    } 
    } 
    xmlhttp.open("GET","func/chat.php?tnow=" + (new Date()).getTime(),true); 
xmlhttp.send(); 
} 
setInterval("chat()",3000); 

희망이 도움이!