jquery删除粘贴html后的文本选择范围

jquery remove text selection range after pasteHTML

本文关键字:文本 选择 范围 html 删除 jquery      更新时间:2023-09-26

我有一个JavaScript片段:

// IE < 9
r = document.selection.createRange();
r.collapse(true);
r.pasteHTML("<p> test html </p>");

这个工作,但我想要的是,一旦HTML被粘贴,它必须失去选择。

换句话说,在pasteHtml方法执行后,页面上的文本"test html"被选中。我不想这样。我想文本被取消选择,但光标应该定位在"测试html"文本的结束。我在:

<div contenteditable="true"> </div>

我该怎么做?

简单:折叠选中的TextRange并重新选择:

var r = document.selection.createRange();
r.collapse(true);
r.pasteHTML("<p> test html </p>");
var selectedRange = document.selection.createRange();
selectedRange.collapse(false);
selectedRange.select();