Javascript 更改innerHTML时停止更改光标位置

Javascript 更改innerHTML时停止更改光标位置,javascript,jquery,html,css,Javascript,Jquery,Html,Css,当javascript编辑innerHTML时,如何停止光标更改位置? 我目前正在做一个小的代码编辑器项目,我想在其中突出显示文本,但要做到这一点,我必须编辑innerHTML/DOM元素,以便在其中添加一个span。但当这种情况发生时,它会将位置更改为文本的开头 var c=document.getElementById(“c”); var t=setInterval(函数(){ c、 innerHTML=$(“#c”).text().split(“lol”).join(“lol”); },

当javascript编辑innerHTML时,如何停止光标更改位置?
我目前正在做一个小的代码编辑器项目,我想在其中突出显示文本,但要做到这一点,我必须编辑innerHTML/DOM元素,以便在其中添加一个span。但当这种情况发生时,它会将位置更改为文本的开头

var c=document.getElementById(“c”);
var t=setInterval(函数(){
c、 innerHTML=$(“#c”).text().split(“lol”).join(“lol”);
},1);
[内容可编辑]{
边框:1px纯色灰色;
}
.hi1{
颜色:rgb(51153255);
}

写“l o l”,不带空格。然后继续写入并尝试使用箭头键/鼠标更改位置

我会将间隔更改为事件侦听器,在更改之前查看并缓存旧的
$(“#c”).text()
,以避免不必要的重写。该页面的答案是正确的,但它不支持MultileSeYea,但它可能是一个很好的起点。我过去也尝试过这样的事情,从来都不容易。我想我求助于div顶部的不透明文本区域,并重新格式化了所有的文本样式,以尽我所能使其匹配。。。祝你好运:SThanks@Isaac,我肯定不能使用textarea;(遗憾的是,我目前一直使用Editable,我会将间隔更改为事件侦听器,查看并缓存旧的
$(“#c”).text()
在更改它以避免不必要的重写之前,该页面的答案是正确的,但它不支持MultileSeYea,但这可能是一个很好的起点。过去我曾尝试过这样做,但从来都不容易。我想我求助于div顶部的不透明文本区域,并重新格式化所有文本样式以尝试我的best让它匹配…祝你好运:SThanks@Isaac,当然我不能使用textarea;(遗憾的是,我目前被困在可编辑的