Hallo miteinander!
Ich arbeite momentan gerade an einem AJAX/PHP Chat und habe ein kleines Problem mit dem Internet Explorer. Und zwar hab ich eine Funktion zum abrufen der neuen Nachrichten im Chat, welche stark vereinfach so aussieht:
function ajax_read() {
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState==4) {
chatresponse = xmlhttp.responseText;
if (chatresponse.length > 0 ){
document.getElementById("i_chatwindow").innerHTML += chatresponse ;
}
setTimeout("ajax_read()", 1000);
}
}
url = "../func/chat_read.php?sid=09u125gsabd4oifcirq3b0dk24&lastid=" + lastid ;
xmlhttp.open('GET',url,true);
xmlhttp.send(null);
}
simpel gesagt geht es um die Funktion setTimeout im Code, welche dafür sorgen sollte, das nach jedem erfolgreichem Request (xmlhttp.readystate == 4) nach 1000ms eine neue AJAX-Anfrage an den Chat gesendet wird. Das Funktioniert prima im FF und in Opera wie gesagt, nur der IE verweigert jegliche zusammenarbeit :(. Ich habe schon rausgefunden das es offenbar daran liegen muss, das ich die Funktion ajax_read aufrufe, weil wenn ich nur einen timeout mit einem Alert mache geht das. Gibts da einen besonderen Kniff oder sehe ich etwas nicht?
Wäre dankbar für jede Antwort.