jquery在pasteHTML之后删除文本选择范围

时间:2011-12-31 13:45:28

标签: javascript

我有一个JavaScript代码段:

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

这可行,但我想要的是,粘贴HTML后,它必然会丢失选择。

换句话说,发生的是pasteHtml方法执行后,在页面上选择了文本“test html”。我不想要这个。我想要取消选择文本,但光标应位于“test html”文本的末尾。 我是这样做的:

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

我该怎么做?

1 个答案:

答案 0 :(得分:1)

简单:折叠选定的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();