Обработка выделенного текста
Добрый день.
На странице имеется текст с картинками. Пользователь выделяет текст, нажимает кнопку, и скрипт обрабатывает выделенное. При обработке выделения через window.getSelection() в получаемом блоке присутствует только голый текст, и полностью отсутствует какая-либо информация о попавших в выделение изображениях. Подскажите пожалуйста, как захватить текст вместе с информацией о присутствующих в нем изображениях ? Спасибо. |
Цитата:
для старых IE: document.selection.createRange().htmlText - заселекченное в виде html-текста, если оное вставить в div - дальше можно смотреть его чилды. всякие там проверки на нулл и try/catch добавь сам по настроению. http://habrahabr.ru/post/55922/ |
Цитата:
Спасибо. Но там только список child'ов, без информации где именно в тексте они находились. Т.е. исходный HTML-код выделения по этой информации восстановить не удастся. Перечитал свой исходный текст. Прошу прощения, видимо я некорректно выразился. На выходе нужен именно HTML-код выделенного блока. Грубый пример для наглядности: на форуме есть сообщение с графическими смайликами. Пользователь выделяет часть текста и жмет "Цитировать". В цитату выделенный текст также должен попасть со смайликами. |
Цитата:
для html-текста надо сделать так: var df = window.getSelection().getRangeAt(0).cloneContents(); var div = document.createElement("div"); div.appendChild(df); var html = div.innerHTML; // истина тут ------ у тебя WYSIWYG-редактор что ли? я подобное делал для конвертации в bb-код, там с чилдами проще было намного. |
Огромное спасибо.
Всё работает. Задача там действительно очень сходна к конвертации смайликов в bb-коды. Сделал по Вашему примеру, потом таки переделал с перебором child'ов. |
Часовой пояс GMT +3, время: 05:45. |