디자인 모드에서 IE8에서 iframe 내부의 텍스트에 대해 캐럿 위치를 얻으려고합니다. 코드는 작동하지만 긴 텍스트의 경우 모든 텍스트를 선택하고 한 번에 한 문자 씩 범위의 끝을 이동하기 때문에 심하게 그리고 추한 수행합니다.IE : designMode의 iframe에서 캐럿 위치를 빠르게 가져올 수 있습니까?
IE에서 현재 캐럿 위치를 얻는 더 빠르고 우아한 방법이 있는지 궁금합니다.
var r = doc.selection.createRange();
r.collapse(false);
doc.execCommand("SelectAll") //this is ugly..
var r2 = doc.selection.createRange();
r2.select();
//..and this is slow
while (r.compareEndPoints("EndToEnd", r2) < 0) {
r2.moveEnd("character", -1)
r2.select();
}
pos = r2.text.length;
이것은 내가 과거에 어떻게했는지 보여줍니다. 죄송합니다. 텍스트 편집은 악몽입니다. – mwilcox
@mwilcox : 나는 악몽을 적게하기 위해 많은 노력을 기울였습니다. 내 대답을 보라. –