用rangy操纵选择

时间:2015-05-13 11:41:59

标签: javascript rangy

我试图使用rangy来操纵选择。我的最终目标是在插入符号的左边选择一段已知长度的文本,但首先我想了解这些工具。

这是我的示例测试页

.contenteditable:empty:before {
  content: "\200B";
  display: inline;
}

当我将光标放在可编辑的div中然后单击SelectStuff时,我希望在光标右侧选择四个字符。它没有,这意味着我还没有理解如何使用它。

有人可以告诉我吗?使用<html> <head> <title>TextRange Demo</title> <script type="text/javascript" src="../lib/rangy-core.js"></script> <script type="text/javascript" src="../lib/rangy-classapplier.js"></script> <script type="text/javascript" src="../lib/rangy-textrange.js"></script> <script type="text/javascript"> window.onload = function() { rangy.init(); }; function SelectStuff(){ var r = rangy.getSelection().getRangeAt(0); r.moveEnd("character", 4); } </script> </head> <body> <div id="content"> <div unselectable="on" onclick="SelectStuff()">SelectStuff</div> <div contenteditable="true" style="border: solid thin blue;"> The quick brown fox jumps over the lazy dog. </div> </div> </body> </html> moveStart方法未在提供的样本中得到证明。

1 个答案:

答案 0 :(得分:1)

没关系,我找到了Internet Explorer本机TextRange的示例,它们的工作方式相同。该范围实际上正在发生变化,但要查看您需要跟进的更改r.select();