Javascript 更改值后在contentEditable中重新设置插入符号

Javascript 更改值后在contentEditable中重新设置插入符号,javascript,selection,Javascript,Selection,(试着在演示中写些东西,看看这种不想要的行为) 当用户在div中键入内容时,可以更改该内容,对文本进行求值,并标记一些单词(包装元素),因此div的HTML会更改,用户会松开插入符号位置 我可以知道在HTML更改之前插入符号偏移量是多少,但我不知道如何将插入符号恢复到该位置,一旦HTML更改,范围对象就没有任何意义 谢谢你的帮助 解决方案- 我在网上找到了一个保存和加载方法供选择,并将它们合并到我的代码中,效果非常好 谢谢,您的保存和加载插入符号位置功能非常棒。@TimDown-您的插入符号保存

(试着在演示中写些东西,看看这种不想要的行为)

当用户在
div
中键入内容时,可以更改该内容,对文本进行求值,并标记一些单词(包装元素),因此
div
的HTML会更改,用户会松开插入符号位置

我可以知道在HTML更改之前插入符号偏移量是多少,但我不知道如何将插入符号恢复到该位置,一旦HTML更改,范围对象就没有任何意义

谢谢你的帮助

解决方案-


我在网上找到了一个
保存
加载
方法供选择,并将它们合并到我的代码中,效果非常好

谢谢,您的
保存
加载
插入符号位置功能非常棒。@TimDown-您的插入符号保存方法中有一个错误,请尝试删除一个字符(不选择):@TimDown-您可能使用了Chrome。我使用FF,删除时会给出[0,0]。你是对的,似乎有一个bug。此后,我编写了更简单的代码来实现这一点,因此,与其尝试调试旧代码,不如将新代码放在这里。