### 如何使聊天室发言时屏幕不闪？

编聊天室程序时，有两种把服务器的数据传到浏览器的方式。一种就是在服务器端有信息后，把信息推到客户端,这种方式使服务器的负载比较重；另一种就是在客户端用 refresh 命令进行刷新，大多数的聊天室都采用这种方式，这就使得我们在浏览器上看到屏幕在不断的刷新，非常影响浏览，在网速慢的时候这种情况更为严重。
有没有办法能够解决这种问题呢？答案是肯定的。下面我就给大家介绍一种用 javacript 来解决这种问题的方法。首先，我们把网页分成三桢。上面一桢为：main.htm,这一桢用来显示聊天的内容；下面一桢为：bottom.htm,用来输入聊天内容。再增加一个隐藏桢:list.asp,这桢的作用就是使的输入的话能够在 main.htm 桢中显示出来。
frame.htm---聊天室框架
<html>
<head>
<title>ASP 酷聊天室</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<frameset rows="1,403,92" cols="*">
<frame src="list.asp" name="list">
<frame src="main.htm" name="main1">
<frame src="bottom.htm">
</frameset>
<noframes><body bgcolor="#FFFFFF">
</body></noframes>
</html>
----------------------------------
main.htm
<html>
<head>
<title>聊天内容显示区</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF">
</body>
</html>
---------------------------------
bottom.htm
<html>
<head>
<title>聊天内容录入区</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body bgcolor="#FFFFFF">
<form name="form1" method="POST"
action="list.asp" target="list">
<div align="center">
<input type="text" name="comment">
<input type="submit" name="Submit" value="写写看">
</div>
</form>
</body>
</html>
----------------------------------------------
list.asp
<cript language="javacript">
function scrollon(){
top.main1.scroll(0, 65000);
}
top.main1.document.write('<=request("comment")>')
top.main1.document.write('<br>')
</cript>
用上面的方法大家就可以看到，在输入聊天内容时，在聊天室显示区中，就可以看到内容一行一行向下写去，而没有出现屏幕不断刷新的情况。下来大家把 list.asp 改变一下，我相信就可以得到从数据库中或者从 application 对象中得到的聊天内容了。只是有可能 list.asp 需要刷新，但是对于在聊天室中聊天的人来说，聊天内容是一行一行向下移动的。
相信用这中方法你就可以做出不在刷新屏幕的聊天室。