好吧,此代碼適用於除IE以外的所有瀏覽器(同樣,預計)。代碼應該基於setInterval進行刷新,並且通常在除IE之外的其他所有瀏覽器中執行,而IE只刷新。你能發現問題嗎?另一個IE問題與AJAX
var nick = document.getElementById("chatnick").value;
var sessid = document.getElementById("sessid").value;
var room = document.getElementById("roomid").value;
function user_read() {
$.ajax({
type: "GET",
url: "methods.php",
data: {method: "u", room: room},
dataType: "html",
success: function (data, status, xhr) {
$("#userwindow").html(data);
setTimeout(user_read, 10000);
}
});
}
function ajax_read() {
$.ajax({
type: "GET",
url: "methods.php",
data: {method: "r", room: room},
dataType: "html",
success: function (data, status, xhr) {
$("#chatwindow").html(data);
setTimeout(ajax_read, 400);
}
});
}
function submit_msg() {
var msg = document.getElementById("chatmsg").value;
$.ajax({
type: "GET",
url: "methods.php",
data: {method: "w", room: room, m: msg, n: nick, sessid: sessid},
dataType: "html",
success: function (data, status, xhr) {
}
});
document.getElementById("chatmsg").value = "";
}
function keyup(arg1) {
if (arg1 == 13) submit_msg();
}
setTimeout(function(){ajax_read();}, 400);
user_read();
爲什麼在DOM準備事件而不是setTimeout()中使用setInterval。在ajax設置中也設置cash:false。 – mohang 2010-06-17 13:50:34
因爲,我是JS和jQuery的新手,不知道如何操作DOM。 – Nik 2010-06-17 13:51:56
設置緩存:false對IE沒有任何幫助。 – Nik 2010-06-17 13:56:54