我试着用rangy来操纵选择。我的最终目标是在插入符号的左端选择一段已知长度的文本,但首先我想了解一下这些工具。
这是我的样本测试页面
<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>当我将光标放置在可编辑的div中,然后单击SelectStuff时,我希望这会选择光标右边的四个字符。它没有,这意味着我还不知道如何使用这个。
能给我个线索吗?在所提供的示例中没有演示moveStart和moveEnd方法的使用。
发布于 2015-05-13 11:52:39
没关系,我为Internet原生TextRange找到了一个示例,它们的工作原理是一样的。范围实际上是变化的,但要查看更改,需要对r.select();进行跟踪。
https://stackoverflow.com/questions/30213774
复制相似问题