У меня есть javascript, который управляет html на основе того, что пользователь выбрал. Для реальных браузеров методы, которые я использую, используют объект "Range", полученный как таковой:
var sel = window.getSelection();
var range = sel.getRangeAt(0);
var content = range.toString();
Переменная содержимого содержит весь выделенный текст, который отлично работает. Однако я обнаружил, что не могу обнаружить новые строки в результирующей строке. Например:
Выбранный текст:
ABC
Защита
GHI
range.toString() вычисляет значение "abcdefghi".
Любой поиск по специальным символам не возвращает экземпляр \n\f\r или даже \s. Если, однако, я записываю переменную в редактируемый элемент управления, снова появляются строки.
Кто-нибудь знает, что мне не хватает?
Может быть, что эти выборы и манипуляции находятся на редактируемых div. Такое же поведение проявляется в Chrome, FireFox и Opera. Удивительно, что IE все равно нуждается в совершенно другом коде, но там нет никаких проблем, кроме того, что это просто IE.
Большое спасибо.