텍스트 필드에 대한 이 확장 기능 및 사용법:
1. 커서 위치 가져오기: $(elem).iGetFieldPos()
2 커서 위치 설정: $(elem).iSelectField( start);
3. 지정된 위치의 문자를 선택합니다: $(elem).iSelectField(start,end)
4. 지정된 문자를 선택합니다: $(elem).iSelectStr(str); > 5. 커서 뒤에 문자열을 삽입합니다: $(elem).iAdd(str);
6. 커서 앞(-n) 또는 뒤(n)에서 n 문자 삭제: $(elem).iDel(n) ;
jQuery 확장 코드:
코드 복사 코드는 다음과 같습니다.
;(function($){
/*
* 텍스트 필드 커서 작업을 위한 jQuery 확장(선택, 추가, 삭제, 가져오기)
*/
$.fn. 확장({
/* if(문서.선택){
> plicate();
dupRange.moveToElementText(필드);
dupRange.setEndPoint( 'EndToEnd',range);
field.selectionStart=dupRange.text.length- range.text.length;
field.selectionEnd=field.selectionStart range.text.length;
}
반환 field.selectionStart;
},
/*
* 지정된 위치의 문자 선택 || 커서 위치 설정
하지만 시작 문자 뒤)
*/
iSelectField: function(start,end){
var field=this.get(0);
//end가 정의되지 않은 경우 커서 위치가 설정됩니다.
if(arguments[1]==undefine){
end=start;
}
if(document.selection){
//IE
var range = field.createTextRange() ;
range.moveEnd('character', -$(this).val().length); start);
range.select();
}else{
//IE가 아닌
field.setSelectionRange(start,end) ;
$(this).focus();
=$( this).val().indexOf(str);
i != -1 ? $(this).iSelectField(i,i str.length) : false;
},
/*
* 커서 뒤에 문자열 삽입
len=$(this).val().length;
if(document.selection){
문서. Selection.createRange().text=str;
$(this).val( ).slice(0,field.selectionStart) str $(this).val().slice(field.selectionStart,len));
this.iSelectField(selPos str.length);
};
~ (0);
var pos=$(this).iGetFieldPos();
var v=$(this) .val();
$(this).val(n>0 ? v.slice(0,pos-n) v.slice(pos) : v.slice(0,pos) v.slice (pos-n));
확장 코드에 로드한 후 확장에 있는 메소드 이름에 따라 호출합니다.