Между прочим, в английском языке курсор для редактирования также называют кареткой, чтобы было понятно, о каком курсоре идёт речь.
Если бы не Internet Explorer, можно было бы использовать функцию textarea.selectionStart, она работает в Firefox, Chrome, Safari. Но поскольку IE не поддерживает эту функцию, можно использовать следующую:
function getCaret(el) {
if (el.selectionStart) {
return el.selectionStart;
} else if (document.selection) {
el.focus();
var r = document.selection.createRange();
if (r == null) {
return 0;
}
var re = el.createTextRange(),
rc = re.duplicate();
re.moveToBookmark(r.getBookmark());
rc.setEndPoint(''EndToStart'', re);
return rc.text.length;
}
return 0;
}
Использовать так:
alert(getCaret(document.getElementById(''thetext'')));
Ещё есть плагин для jQuery для работы для задания и получения позиции курсора (каретки).
Если Вам надо задать, а не получить позицию курсора в textarea, тогда прочтите этот вопрос.