2015-05-13 3 views
0

Я пытаюсь использовать rangy для управления выбором. Моя конечная цель - выделить фрагмент текста известной длины непосредственно слева от каретки, но сначала я хотел бы понять инструменты.Манипулировать выбором с 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 не показано в поставляемых образцах.

ответ

1

Ничего, я нашел образец для собственного текстового редактора Internet Explorer и они работают одинаково. Диапазон был фактически изменен, но до см. изменение, которое необходимо отслеживать с r.select();