Javascript 更改文档时选择文本

Javascript 更改文档时选择文本,javascript,html,Javascript,Html,我正在制作一个实时日志页面,在这里我使用ajax获取数据并将其添加到文档中 我希望能够选择并复制此日志中的部分文本,但如果在向日志添加新行的同时进行选择,则会将其弄糟,我必须重新开始 下面是一个示例,尝试选择出现的第二个“嘿”: var div=document.createElement(“div”); 文件.正文.附件(div); var add=函数(){ div.innerHTML+=“嘿”; 如果(div.childrence.length

我正在制作一个实时日志页面,在这里我使用ajax获取数据并将其添加到文档中

我希望能够选择并复制此日志中的部分文本,但如果在向日志添加新行的同时进行选择,则会将其弄糟,我必须重新开始

下面是一个示例,尝试选择出现的第二个“嘿”:

var div=document.createElement(“div”);
文件.正文.附件(div);
var add=函数(){
div.innerHTML+=“嘿”;
如果(div.childrence.length<100)设置超时(add,300);
}

添加()
将child
new
div
s添加到正文中,而不是执行
innerHTML+=
。不管怎么说,这要有效得多。您选择的任何内容都不会涉及浏览器正在更新的div

function add() {
    var div = document.createElement("div");
    div.innerHTML = "log string";  // SECURITY WARNING: don't let user strings in here
    document.body.appendChild(div);
    // do something to reschedule add
}
add();

只需
appendChild
new
div
s添加到正文中,而不是执行
innerHTML+=
。不管怎么说,这要有效得多。您选择的任何内容都不会涉及浏览器正在更新的div

function add() {
    var div = document.createElement("div");
    div.innerHTML = "log string";  // SECURITY WARNING: don't let user strings in here
    document.body.appendChild(div);
    // do something to reschedule add
}
add();
选择被“销毁”,因为每次运行时都会覆盖整个
内容。所以每300毫秒第二排就有一个“新嗨”

使用
appendChild
应该可以:

var div=document.createElement('div');
文件.正文.附件(div);
var add=函数(){
var节点=document.createElement('div');
node.innerText='hey';
div.appendChild(节点);
如果(div.childrence.length<10)设置超时(add,300);
};
添加()选择被“销毁”,因为每次运行时都会覆盖整个
内容。所以每300毫秒第二排就有一个“新嗨”

使用
appendChild
应该可以:

var div=document.createElement('div');
文件.正文.附件(div);
var add=函数(){
var节点=document.createElement('div');
node.innerText='hey';
div.appendChild(节点);
如果(div.childrence.length<10)设置超时(add,300);
};
添加()