JS расширяет пустой диапазон в IE - PullRequest
2 голосов
/ 03 марта 2010

У меня есть каретка в текстовой области (без выбора). Мне нужно сделать из этого выбор.
Например: «Это te | xt»

var caret = document.selection.createRange (); // got empty range between "e" and "x"
caret.moveEnd('character'); // Move endpoint one character right, now it must be "x"
alert (caret.text); // empty !!!

Что не так?

1 Ответ

3 голосов
/ 03 марта 2010

Вы не вызываете «moveEnd» для объекта выделения - вы вызываете его для TextRange («каретка»):

var caret = document.selection.createRange (); // got empty range between "e" and "x"
caret.moveEnd('character'); // Move endpoint one character right, now it must be "x"
caret.select(); // make the selection equal the range
alert (caret.htmlText);

edit Я также редактирую это, чтобы сделать так, чтобы "alert" действительно работал: -)

Вот пример страницы: http://gutfullofbeer.net/range.html

Я думаю, что этот материал может работать только в IE. (Подтверждено, что по крайней мере Chrome ничего не делает с этим кодом.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...