[问题] 请问如何将contenteditable div的光标停在指定的位置

楼主: banana2014 (香蕉共和国)   2015-05-14 20:54:19
[HTML]
<div id="main" contenteditable="true" style="border:solid 1px black">
<div>Said Hamlet to Ophelia,</div>
<div>I'll draw a sketch of thee,</div>
<div>What kind of pencil shall I use?</div>
<div>2B or not 2B?</div>
</div>
<button onclick="set_caret_pos()">Set caret position</button>
[Javascript]
function set_caret_pos(){
var content=document.getElementById("main");
var character = 4, sel; // character at which to place caret
content.focus();
if (document.selection) {
sel = document.selection.createRange();
sel.moveStart('character', character);
sel.select();
}
}
就像上面一样,按一下按钮就能将光标停在指定的位置(上例是停在第4字符)
但是上面的例子只适用于旧版的IE,其他浏览器就没办法如此了
请问该如何将光标停在指定的位置?(所有浏览器都能适用的方法)
作者: clerkhsiao (火球小子)   2015-05-15 10:15:00
Focus
作者: mouse26 (请吱解我)   2015-05-15 10:31:00
range and selection http://goo.gl/S38Feh你只能旧IE一种做法 其他一种做法

Links booklink

Contact Us: admin [ a t ] ucptt.com