我有一个聊天,每 0.1 秒自动刷新一次,但有时它需要永远刷新甚至加载。
代码:
我在 html 文档的 htdocs 之前有我的 Body OnLoad 脚本。
<body onload="chat_load()">
这是我的java脚本。
<script type="text/javascript" src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script type='text/javascript'>
var updateTime = 1;
var running = false;
var counter = 0;
function chat_update(){
if(counter = updateTime)
chat_load();
else
counter ++;
if (running == true)
setTimeout("chat_update", 100);
}
function chat_load(){
$.post('chat_submit.php', {stage:"load"}, function(data){
$('#chatbox #primary #window').html( data );
counter = 0;
setTimeout("chat_load();", 100*updateTime);
});
}
function chat_send(){
var text = document.getElementById("chat_text").value;
document.getElementById("chat_text").value = '';
$.post('chat_submit.php', {stage:"send", text:text}, function(data){
if(data == "good")
chat_load();
else
alert("Please enter a message.");
});
}
</script>
聊天提交.php
if($stage == "load"){
$query = mysql_query("SELECT * FROM chat_chats ORDER BY time DESC");
if(mysql_num_rows($query) >0){
while($row = mysql_fetch_assoc($query)){
$user1 = $row['user'];
$date = $row['time'];
$content = $row['text'];
if($user == $user1){
$num = 2;
}else{
$num = 1;
}
echo '<div class="list'.$num.'">';
echo '<b>'.$user1.'</b> <font color="red"><i>'.$date.'</i></font> <br> '.$content;
echo "</div>";
}
}
else
echo "No messages found be the first.";
}
**
我遇到的问题是,有时它不会在第一页加载时刷新甚至加载。有谁知道为什么?我仍然希望它能够快速自动刷新,但现在它似乎滞后并且失败了很多。代码中是否有任何错误或者我可以使用更好的功能?
**
谢谢。