@H_301_0@要制作一个在线聊天的程序,在做最后的修饰时,需要对获得的信息即时滚动以保证用户总能看到最新消息。
@H_3010@聊天程序是基于AJAX设计的,没有用框架,消息容器是一个DIV,所以问题就在于如何控制DIV的滚动条。
@H301_0@但同样的代码拿到我这里却完全失效,又仔细查了下资料说XHTML标准下scrollTop的值恒为0,解决办法是使用 document.documentElement.scrollTop代替document.body.scrollTop,讲了半天所解决的是整个页 面的滚动条。这个方法我是用不了了,因为不是框架结构,所以不可能用body的滚动条控制浏览信息。
@H_3010@网上关于这个问题的资料很少,连CSDN上也说没有办法。
@H301_0@不死心,后来查DHTML手册得知DIV有个doScroll方法可以用来模拟滚动条点击,但很令人失望,到了我这里又是完全失效,难道又不被XHTML支持?
@H_301_0@最后终于被我找到三种控制DIV内容滚动的方法:
@H_301_0@
方法一:
@H_301_0@使用锚标记要滚动到的位置,然后通过click方法模拟点击滚动到锚所在位置
<div class="jb51code">
<pre class="brush:js;">
<script language="javascript1.2" type="text/javascript">
function onGetMessage(context)
{
msg.innerHTML+=context;
msg_end.click();
}