标签:style http io os ar sp div on art
在网上看了很多用js在光标处插入文字的代码,很多都没有用,互抄而已,浪费时间。最近用到一个新方法,可以到达这个需求。IE支持document.selection,Firefox,Chrome,Safari以及Opera都有selectionStart和selectionEnd属性。泗阳县民用航空局
代码如下:
01 |
function insertText(obj,str) { |
02 |
if (document.selection) { |
03 |
var sel = document.selection.createRange(); |
04 |
sel.text = str; |
05 |
} else if ( typeof obj.selectionStart === ‘number‘ && typeof obj.selectionEnd === ‘number‘ ) { |
06 |
var startPos = obj.selectionStart, |
07 |
endPos = obj.selectionEnd, |
08 |
cursorPos = startPos, |
09 |
tmpStr = obj.value; |
10 |
obj.value = tmpStr.substring(0, startPos) + str + tmpStr.substring(endPos, tmpStr.length); |
11 |
cursorPos += str.length; |
12 |
obj.selectionStart = obj.selectionEnd = cursorPos; |
13 |
} else { |
14 |
obj.value += str; |
15 |
} |
16 |
} |
17 |
function moveEnd(obj){ |
18 |
obj.focus(); |
19 |
var len = obj.value.length; |
20 |
if (document.selection) { |
21 |
var sel = obj.createTextRange(); |
22 |
sel.moveStart( ‘character‘ ,len); |
23 |
sel.collapse(); |
24 |
sel.select(); |
25 |
} else if ( typeof obj.selectionStart == ‘number‘ && typeof obj.selectionEnd == ‘number‘ ) { |
26 |
obj.selectionStart = obj.selectionEnd = len; |
27 |
} |
28 |
} |
标签:style http io os ar sp div on art
原文地址:http://www.cnblogs.com/xiaoyang002/p/4055716.html