可编辑div的createRange()
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
// 在元素的指定位置设置输入光标 (注:目前只支持开始位置和结束位置)function __setCaret(element, pos)
{ try
{
element.focus();
}
catch(e)
{
}
var len = __innerText(element).length;
// pos小于0或大于文本长度,则设置光标在输入区域末尾
pos = pos < 0 ? len : pos > len ? len : pos;
if (document.selection) // ie
{
var rang = document.body.createTextRange();
rang.moveToElementText(element);
rang.collapse(pos == 0);
rang.select();
}
else if (window.getSelection) // ff
{
var sel = window.getSelection();
var range = document.createRange();
range.selectNodeContents(element);
range.collapse(pos == 0);
sel.removeAllRanges();
sel.addRange(range);
}
} |