浏览器下使用 websocket.onmessage 不断的往 textarea 里添加内容,模拟终端下的 tail -f logfile 滚动效果,有几个问题请教一下

2014-05-15 17:31:38 +08:00
 rrfeng
1. 如何使 textarea 的滚动条自动滚动呢?最好的效果是:滚动条触底则自动滚动;

选用 textarea 呈现数据是因为数据里很多空格和 TAB 开头,其他元素内这些都不会被渲染(除非用 js 转换成 &nbsp …… )

2. 假设服务器发送速度稍快的话,浏览器就会很卡……何解……
2744 次点击
所在节点    问与答
4 条回复
66beta
2014-05-15 17:53:34 +08:00
1. 滚到底
var e = document.getElementById('box');
e.scrollTop = e.scrollHeight;
$("#box").scrollTop($("#box").scrollHeight);

2. 没玩过websocket,不懂,但不是说是异步的么,除非同时开启了好多的进程
zzNucker
2014-05-15 18:00:33 +08:00
你慢点触发onmessage事件嘛,更改DOM要消耗的。
rrfeng
2014-05-15 19:22:01 +08:00
@zzNucker
意思是一次多发数据,少操作 DOM ?
rrfeng
2014-05-15 19:22:37 +08:00
@66beta
滚动的问题解决了,现在就是卡的问题

刷 700 行进去就开始卡了,CPU 爆高……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/112706

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX