TextRange는 HTML 요소에서 텍스트를 나타내는 데 사용되는 개체입니다. 이 개체는 자주 사용되지 않지만 IE4.0에서는 이미 제공됩니다. 그러나 TextRange에서 제공하는 호출 메서드는 상대적으로 모호합니다. 그렇다면 이를 통해 무엇을 할 수 있을까요?
TextRange의 전통적인 용도는 웹 페이지에서 사용자가 마우스로 원을 그리는 텍스트 콘텐츠를 변경, 삭제, 추가 등 조작하는 것입니다. 그러나 일반적인 용도는 웹 페이지에서 텍스트를 찾고(비교적 간단함) 입력 상자 커서의 위치를 가져오는 것입니다. 후자는 입력을 제한하는 MaskTextBox와 같이 더 많은 유용한 용도를 파생할 수 있습니다. 핵심 기술 요점은 입력 상자의 커서 위치를 얻은 다음 정규식을 사용하여 입력 내용을 결정하는 것입니다. 나중에 소개할 "방향키를 사용하여 입력 상자 매트릭스에서 자연스러운 탐색"도 있습니다. 핵심 기술 포인트는 입력 상자에서 커서 위치를 얻는 것입니다.
입력 상자에서 커서 위치를 가져오는 전체 코드는 실제로 매우 짧지만 이러한 개체와 메서드는 일반적으로 사용되지 않습니다.
TextRange의 구체적인 사용법을 완전히 이해하려면 관련 내용을 알아야 합니다. MSDN
을 참조하세요. 여기서는 입력 상자 작업에 GetCursorPsn() 메서드를 사용할 때의 부작용에 대해 설명합니다. 입력 상자
의 텍스트를 선택할 수 없으며 Shift 위, 아래, 왼쪽도 더 이상 사용할 수 없습니다. 텍스트를 선택하려면 오른쪽 화살표 키를 사용하세요. 코드가 텍스트에 대한 현재 커서의 startPoint를 얻은 후 rng.collapse(false);를 호출하면 텍스트 상자에 있는 텍스트의 EditPoint가 변경되기 때문입니다. 그러나 이 부작용은 기본적으로 텍스트 상자를 사용할 때 큰 문제를 일으키지 않으므로 기본적으로 너무 많은 주의를 기울일 필요가 없습니다. <script> <BR>function GetCursorPsn(txb) <BR>{ <BR> var slct = document.selection; <BR> var rng = slct.createRange(); <BR> txb.select(); <BR> rng.setEndPoint("StartToStart", slct.createRange()); <BR> var psn = rng.text.length; <BR> rng.collapse(false); <BR> rng.select(); <BR> return psn; <BR>} <BR></script>