나는 내 블로깅 웹 사이트의 텍스트 편집기를 만들고 있습니다. 사용자에게 텍스트를 선택하고 선택한 텍스트를 굵게 또는 기울임 꼴로 표시하거나 선택한 텍스트에 일부 색상을 지정하는 것과 같은 스타일을 적용하여 블로그 게시물을 편집 할 수있는 작은 도구 상자를 제공하려고합니다. 이미지 및 비디오 링크 삽입 옵션.contentEditable div에 대해 캐럿 위치를 얻는 방법?
나는 SO를 검색했지만 만족할만한 해결책을 얻을 수 없었다.
누구든지 선택을위한 (또는 선택없이) 캐럿 위치를 찾는 것을 도울 수 있다면 좋을 것입니다. jQuery 캐럿 플러그인을 시도했지만 작동하지 않습니다.
내 코드 (SO에서만 게시물을 읽는이에 도착) 다음과 같습니다
HTML : 별도의 JS 파일에서
<div id="editor" contentEditable="true">
Initial text...
</div>
: 나는 점점 오전
(function(){
$("#editor").bind("keydown keypress mousemove", function() {
alert("Current position: " + $(this).caret().start);
});
}());
페이지가로드되고 키 누르거나 이벤트에 아무런 반응이 없을 때 다음과 같은 오류가 발생합니다 :
it
f.value 정의되지 말한다 또한
this link을 시도했지만 원래 DIV 안에 다른 태그가있는 경우 여기에 제공된 솔루션 못해 작동합니다.
도와주세요. 또한 좀 더 나은 해결책이나 완전히 다른 접근법을 가지고 있다면, 저를 안내하십시오.
이 캐럿 위치에있을 때 무엇을하고 싶습니까? –
일부 태그를 사용하여 선택 영역 내에 텍스트를 줄 바꿈하고 사용자에게 현장 미리보기를 제공합니다. 질문을 게시하는 동안 내가하는 일을별로 할 수 없어 별도의 컨테이너에서 미리보기를 제공합니다. 블로그는 오랫동안 여러 번 사용할 수 있습니다. –
오 !! 그 경보는 그 값이 괜찮은지 테스트하는 것이었다 ... 나는 값을 저장하고 별도의 기능을 사용하여 조작하는 경향이있다. –