Javascript 在滚动div中保留x行数
不知道如何命名这个问题,但基本上我是将服务器进程的输出流式传输到web浏览器,并将其放入名为result in html的变量中Javascript 在滚动div中保留x行数,javascript,html,Javascript,Html,不知道如何命名这个问题,但基本上我是将服务器进程的输出流式传输到web浏览器,并将其放入名为result in html的变量中 <script type="text/javascript" charset="utf-8"> $(document).ready(function() { namespace = '/socket'; var socket = io.connect(location.protocol + '//' + docume
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
namespace = '/socket';
var socket = io.connect(location.protocol + '//' + document.domain + ':' + location.port + namespace);
socket.on('my_response', function(msg) {
document.getElementById('result').innerHTML += msg.data;
});
</script>
<div id="result"></div>
我面临的挑战是,如果进程运行的时间足够长,浏览器就会崩溃,这可能是因为变量太大。我想保持250行,并不断更新,同时删除任何超过250行
有办法做到这一点吗
谢谢 您可以将文本拆分为单独的行,删除超出限制的所有行,然后再次设置文本。看起来是这样的:
socket.on('my_response', function(msg) {
var lineBreak = '<br>'; // or whatever you're using to delineate lines
var currentText = document.getElementById('result').innerHTML + msg.data;
var lines = currentText.split(lineBreak); // split your text into lines
lines = lines.slice(-250); // only keep the most recent lines
document.getElementById('result').innerHTML = lines.join(lineBreak);
});