作者banana2014 (香蕉共和国)
看板Ajax
标题[问题] 请问如何将contenteditable div的游标停在指定的位置
时间Thu May 14 20:54:19 2015
[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,其他浏览器就没办法如此了
请问该如何将游标停在指定的位置?(所有浏览器都能适用的方法)
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 219.80.137.190
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Ajax/M.1431608062.A.F6D.html
※ 编辑: banana2014 (219.80.137.190), 05/14/2015 21:01:02
※ banana2014:转录至看板 Web_Design 05/14 21:51
1F:推 clerkhsiao: Focus 05/15 10:15
3F:→ mouse26: 你只能旧IE一种做法 其他一种做法 05/15 10:33