我有一个常规的文本节点,我刚刚插入到DOM中。
我想选择它(就像用户用鼠标实际选择它一样),要么用Javascript,要么用Rangy。
我有以下代码(我认为很难看):
// insert as regular text node
var txt = document.createTextNode($mySpan.text());
$myHeading.get(0).insertBefore(txt, $mySpan.get(0));
// select again
var sel = rangy.getSelection();
sel.removeAllRanges()
var range = rangy.createRange();
range.selectNode(txt);我很乐意在这方面提供任何帮助。我不知道该如何实现它,而且口罩也不起作用。我能想到的唯一方法是在文本之间插入两个元素,然后选择它,然后删除元素,但是我想知道是否有更优雅的方法。
谢谢,任何帮助都感谢。
发布于 2014-03-01 19:31:28
除非我的眼睛欺骗了我,否则你的代码中唯一缺少的就是这一行:
sel.setSingleRange(range);只需将其添加到您目前拥有的内容的末尾即可。(还可以删除sel.removeAllRanges()。)
https://stackoverflow.com/questions/22114831
复制相似问题