Hallo!
Ich fang seit einigen Tagen an Ajax zu lernen und möchte mehrere DIV Contents automatisch aktualisieren lassen.
1 DIV-Content zu aktuallisieren funktioniert optimal, aber ich würde gerne mehrer DIV contents gleichzeitig aktuallisieren lassen, und möglichst unabhängig.
Das ist der Code in der Include-Datei, was ich zwischen einem Get-Parameter gelagert habe, also es ist sichtbar unter /start?site=onlinelist Datei: /plugins/refresh-onlinelist.php PHP-Code:
<head>
<script type="text/javascript">
<!--
var objectPage = false;
function MAINPAGE(){
if(window.XMLHttpRequest){
objectPage = new XMLHttpRequest();
}else if(window.ActivePage){
try{
objectPage = new ActivePage("Msxml2.XMLHTTP");
}catch(e){
try{
objectPage = new ActivePage("Microsoft.objRequest");
}catch(e){}
}
}
if(!objectPage){
return false;
}
}
function REFRESHPAGE() {
if(objectPage && objectPage.readyState){
objectPage.abort();
objectPage = false;
}
if(!objectPage){
MAINPAGE();
}
objectPage.open('GET', '/plugins/refresh-onlinelist.php', true);
self.objectPage.onreadystatechange = function(){
if(objectPage.readyState == 4){
if(objectPage.status == 200){
document.getElementById("onlinelist").innerHTML = unescape(objectPage.responseText);
}else{}
}
}
objectPage.send(null);
}
window.onload = function(){
hTimer = window.setInterval(function(){REFRESHPAGE();}, 1000);
}
//-->
</script>
</head>
<div id="onlinelist">DAS IST DER BEREICH, DER SICH AKTUALLISIERT</div>
wenn ich /plugins/refresh-onlinelist.php öffne, funktioniert der Script optimal, wenn ich aber /start?site=onlinelist öffne, wo das includiert sein soll, dann funktioniert das nicht. Kann das vielleicht sein, dass 2 requests nicht gleichzeitig laufen können?
/navi-footer.php
Der zweite Div-Content, der richtig funktioniert, hat den selben Code, nur das die Objekte anders benannt sind. Dieser Div-Content wird überall auf meiner Website ausgegeben.
Der Hintergrund ist, dass ich Online-listen und chats ermöglichen möchte, bzw mehrere Bereich, die sich automatisch aktuallisieren.
Ich wäre dankbar, wenn mir jemand erklären kann, woran das liegt.