| | ||
| cvcssawsasdq | ||
| Четверг Февраль 17, 2011 г. IE4+ function textareaCurLineNum(obj) { var rowHeight = obj.clientHeight/obj.rows; var curHeight = obj.createTextRange().boundingHeight; return parseInt(curHeight/rowHeight)+(obj.value!=''? 1:0); } Обратите внимание на то, как ведется подсчет строк: если текстовое поле пусто, то функция вернет 0 (хотя курсор и мигает в первой строке), ибо строк реально нет; ...
|
| |
| Четверг Февраль 17, 2011 г. IE4+Mozilla/Gecko function getCaretPos(obj){ obj.focus(); if(obj.selectionStart) return obj.selectionStart;//Gecko else if (document.selection)//IE { var sel = document.selection.createRange(); var clone = sel.duplicate(); sel.collapse(true); clone.moveToElementText(obj); &n...
|
| Четверг Февраль 17, 2011 г. IE if (document.selection) { var s = document.selection; //создаем объект из выделенного var r = s.createRange(); //создаем на основе выделенного объект TextRange var len = r.text.length; //вычисляем длину первоначального текста var newText= "сдесь текст который заменит первоначальный"; r.text = newText; len = newText.length - len; //вычисляем разницу длин нового ...
|
| Четверг Февраль 17, 2011 г. IE4+ Internet Explorer позволяет нам сделать это при помощи следующих методов : createTextRange() - данный метод создает объект типа TextRange (текстовый диапазон) и позволяет манипулировать текстом. Пустой текстовый диапазон представляет собой курсор - точку ввода. collapse() - данный метод объекта TextRange сужает текстовый диапазон до 0 (превращает его в курсор (в точку ввода)) и устанавливает точку ввода либо в начало диапазона (collapse(true) или п...
|
| Четверг Февраль 17, 2011 г. Как это ни "странно" :-), но реализация ветвится из-за разных методов работы с выделениями в IE и Mozilla/Gecko:IE4+ В Internet Explorer используем объект selection, который представляет текущее выделение и его метод createRange, создающий объект TextRange из текущего выделения. Полученный TextRange объект имеет свойство text (для чтения и записи), которое и дает нам выделенный текст. Т.е. прочитали TextRange.text, сделали изменения и записали назад.См....
|
| cvcssawsasdq | |||



