2014-04-08 5 views
1

입력을위한 특수 문자 메뉴를 만들고 있습니다. 그들이 옵션 메뉴를 클릭 할 때, 앱은 캐럿 (마우스 커서)의 위치에 특수 문자를 붙여 넣어야합니다.자바 스크립트를 사용하여 캐럿 위치에 텍스트를 입력하는 방법은 무엇입니까?

코드가 입력을 document.getElementById("id").value으로 편집 할 때마다 텍스트 상자의 끝에있는 캐럿의 위치가 재설정 된 것처럼 보입니다.

죄송합니다. 전에 물어 본 경우, 나는 많은 연구를 수행했지만 아무것도 찾지 못했습니다.

답변

1

우선 입력이 포커스가없는 경우에도 마지막 위치임을 알 수 있도록 캐럿 위치를 저장해야합니다. 캐럿 위치가 변경되었음을 의미하는 이벤트 범위를 청취하여이를 수행 할 수 있습니다.

그런 다음 사용자가 특수 문자를 추가하기 위해 버튼을 클릭하면 저장 한 캐럿 위치에 특수 문자를 배치 할 수 있습니다. 또한 포커스를 반환하여 캐럿을 마지막 위치로 되돌릴 수 있습니다.

Cursor Position Control Example는 희망이 당신이 올바른 방향으로 가야합니다

나는 캐럿 위치를 추적하는 방법의 좋은 예를 발견했습니다.