$.fn.selectRange = function(start, end) {
return this.each(function() {
if(this.setSelectionRange) {
this.focus();
this.setSelectionRange(start, end);
} else if(this.createTextRange) {
var range = this.createTextRange();
range.collapse(true);
range.moveEnd('character', end);
range.moveStart('character', start);
range.select();
}
});
};
// use like this
$('#elem').selectRange(3,5);
위 함수는 jQuery에서 사용할 수 있도록 한 것이고 jQuery를 쓰지 않는다면 따로 함수로 정의해서 타겟이 되는 엘리먼트도 아규먼트로 넘겨주어야 합니다. 이름에도 알 수 있듯이 이 함수는 문자열의 원하는 범위의 text를 선택하는 코드입니다. 단순히 커서의 위치를 이동하고자 한다면 start와 end 파라미터를 동일한 값으로 지정하면 됩니다.
IE6,7에서는 테스트 해보지 않았지만 그 외의 브라우저에서는 잘 동작합니다.
textarea에도 잘 적용되는군요...text 선택하는데 써도 좋지만 기존에 입력된 내역이 있으면 맨 마지막으로 커서를 옮기는데도 활용할 수 있어서 좋습니다...감사합니다...
예 textarea도 원리는 동일하니까요. 도움되셨다니 다행이네요 ㅎ