Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.07.2013, 17:47
Интересующийся
Отправить личное сообщение для alexbutav Посмотреть профиль Найти все сообщения от alexbutav
 
Регистрация: 21.06.2013
Сообщений: 10

Замена выделенного текста
Я делаю так( не для ie, у ie все проще):
selected = window.getSelection();
var selRange = selected.getRangeAt(0);
var div = document.createElement('div');
div.innerHTML = text;
selRange.deleteContents();
selRange.insertNode(div);

Как мне вставлять не div элемент, а просто строку?
Ответить с цитированием
  #2 (permalink)  
Старый 10.07.2013, 17:51
Аватар для animhotep
Профессор
Отправить личное сообщение для animhotep Посмотреть профиль Найти все сообщения от animhotep
 
Регистрация: 17.01.2013
Сообщений: 887

замените var div = document.createElement('div'); на var div = document.createElement('span');
Ответить с цитированием
  #3 (permalink)  
Старый 10.07.2013, 17:51
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

попробуйте так
var t=document.createTextNode(text);
selRange.deleteContents();
selRange.insertNode(t);
Ответить с цитированием
  #4 (permalink)  
Старый 10.07.2013, 18:13
Интересующийся
Отправить личное сообщение для alexbutav Посмотреть профиль Найти все сообщения от alexbutav
 
Регистрация: 21.06.2013
Сообщений: 10

Span - не подходит, нужно просто текст.

vadim5june - ваш вариант почти сработал, только такое ощущение, что он вставляет текст с экранирование спец символов.

До фунцкии:


После функции:

Последний раз редактировалось alexbutav, 10.07.2013 в 18:16.
Ответить с цитированием
  #5 (permalink)  
Старый 10.07.2013, 18:29
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

это текстовый ноде-в нем только текст и всякие теги он выводит как текст
Ответить с цитированием
  #6 (permalink)  
Старый 10.07.2013, 18:41
Интересующийся
Отправить личное сообщение для alexbutav Посмотреть профиль Найти все сообщения от alexbutav
 
Регистрация: 21.06.2013
Сообщений: 10

тогда, придется делать через див, а потом удалять <div> и </div> из элеменета.
Ответить с цитированием
  #7 (permalink)  
Старый 10.07.2013, 18:47
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Сообщение от alexbutav Посмотреть сообщение
тогда, придется делать через див, а потом удалять <div> и </div> из элеменета.
Есть для этого DocumentFragment
http://learn.javascript.ru/multi-ins...cumentfragment
Ответить с цитированием
  #8 (permalink)  
Старый 10.07.2013, 18:55
Интересующийся
Отправить личное сообщение для alexbutav Посмотреть профиль Найти все сообщения от alexbutav
 
Регистрация: 21.06.2013
Сообщений: 10

Спасибо, попробую использовать её.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена текста при наведении Sirius-jack Общие вопросы Javascript 3 04.05.2013 05:16
Вывод выделенного текста в форме другого окна Mrjoey Events/DOM/Window 10 22.06.2011 22:31
букмарклет для передачи в $.post выделенного фрагмента текста dimiork AJAX и COMET 2 30.03.2011 13:08
позиция выделенного текста в textarea, начало/конец `p r o x y jQuery 3 07.05.2009 09:08
Замена выделенного текста alexKniaz Общие вопросы Javascript 0 27.10.2008 23:25