Мне интересно, как онлайн-редакторы форматированного текста поддерживают форматирование при вставке текста с веб-страницы или документ. Стандартное текстовое поле принимает только текст, в то время как эти редакторы WYSIWYG, похоже, используют DIV. Как это работает?
Как работают онлайн-редакторы форматированного текста?
Ответы (3)
Онлайн-редакторы форматированного текста используют contentEditable или designMode, чтобы воспользоваться встроенной поддержкой браузера для редактирования HTML. Когда вы вставляете в элемент contentEditable или designMode, браузер помещает HTML непосредственно в элемент. Попробуйте сами, вставив в демонстрацию Midas, а затем используя элемент проверки Firebug, просмотрите HTML-код, который вы наклеено.
Приложения JavaScript могут использовать метод execCommand для форматирования выбора пользователя в редакторе форматированного текста.
Редакторы WYSIWYG на самом деле основаны на базовых функциях редактирования HTML, которые уже встроены в браузеры. В Firefox эта технология называется Мидас. В IE contentEditable.
Используя существующие возможности браузера (IE — ContentEditable). Это позволяет разработчику разрешить пользователю редактировать html напрямую. Обычно они используют iFrame, чтобы отделить редактируемый раздел от остальной части страницы, но это не обязательно.
Затем разработчик может просто прочитать html-источник iframe (или что-то еще), и все готово.