Привет, я пытаюсь получить позицию каретки внутри freetextbox , это нужно только для работы в IE, я понятия не имею, как это сделать, попробовал несколько скриптов, которые я нашел с помощью Google, но ни один из них не сработал и даже после попытки их исправить они не дали правильного результата ..
Так есть ли способ сделать это? Кажется, что-то так легко сделать, но это не так ...
Используя ответ WTK, я понял это, я думаю!
function GetCaretPossion(o) {
var r = document.selection.createRange();
var sel = o.GetSelection();
var re = o.CreateRange(sel);
var rc = re.duplicate();
re.moveToBookmark(r.getBookmark());
rc.setEndPoint('EndToStart', re);
return rc.text.length;
}
Edit:
Это прекрасно работало, пока я не щелкнул тег img внутри документа, тогда кажется, что o.CreateRange (sel) возвращает [Object, ControlRangeCollection] вместо [Object, TextRange] .. Есть ли способ решить эту проблему ??
Edit2:
Кажется, это дает мне индекс в тексте, а не индекс в html позади него, так что в конце концов он не работал ..