반응형
function
insertAtCursor(areaId,text)
{
var
txtarea = document.getElementById(areaId);
var
scrollPos = txtarea.scrollTop;
var
strPos = 0;
var
br = ((txtarea.selectionStart || txtarea.selectionStart ==
'0'
) ?
"ff"
: (document.selection ?
"ie"
:
false
) );
if
(br ==
"ie"
) {
txtarea.focus();
var
range = document.selection.createRange();
range.moveStart (
'character'
, -txtarea.value.length);
strPos = range.text.length;
}
else
if
(br ==
"ff"
) strPos = txtarea.selectionStart;
var
front = (txtarea.value).substring(0,strPos);
var
back = (txtarea.value).substring(strPos,txtarea.value.length);
txtarea.value=front+text+back;
strPos = strPos + text.length;
if
(br ==
"ie"
) {
txtarea.focus();
var
range = document.selection.createRange();
range.moveStart (
'character'
, -txtarea.value.length);
range.moveStart (
'character'
, strPos);
range.moveEnd (
'character'
, 0);
range.select();
}
else
if
(br ==
"ff"
) {
txtarea.selectionStart = strPos;
txtarea.selectionEnd = strPos;
txtarea.focus();
}
txtarea.scrollTop = scrollPos;
}
[출처] stackoverflow
반응형
'※ 소소한 IT > JAVASCRIPT' 카테고리의 다른 글
[jQuery] jQuery에서 .attr()과 .prop()의 차이: checkbox와 radio 체크 문제 해결하기 (0) | 2016.02.24 |
---|---|
front-end 개발자 인터뷰 문제 - HTML 영역 (0) | 2015.04.02 |
front-end 개발자 인터뷰 문제 - javascript 영역 (0) | 2015.04.02 |
jQuery 유용한 팁과 예제 모음 (0) | 2015.03.10 |
javascript 함수 (0) | 2014.07.21 |