#javascript #content-management-system #richtextbox #ckeditor #rtf
#javascript #content-management-system #richtextbox #ckeditor #rtf
Вопрос:
Я думал, что знаю JavaScript довольно хорошо, но потом я подумал о том, как работают редакторы форматированного текста, такие как CKEditor, и понял, что понятия не имею.
Я предполагаю, что кнопки каким-то образом подключены через JavaScript к текстовой области, но как она помечена.
Есть ли что-то особенное в редакторах форматированного текста в Интернете, или это просто много навороченных js?
Ответ №1:
Множество fancy.js , и то, что раньше было расширением MS для DOM под названием «contentEditable», которое в основном превращает любой элемент dom в простой текстовый редактор. JS позволяет выполнять такие действия, как выделение жирным шрифтом / курсивом / шрифтами / вставка других элементов DOM (таблиц, изображений и т. Д.). Но в конце все сводится к contentEditable.
Ответ №2:
проверьте это:
http://www-archive.mozilla.org/editor/midasdemo/
и это: https://developer.mozilla.org/en/rich-text_editing_in_mozilla
Ответ №3:
Вы можете сделать это с помощью свойства contentEditable элемента div.. Допустим, у вас есть жирная кнопка. Пользователь нажимает на него, затем вы вызываете функцию js и открываете тег, например <b>
, когда пользователь нажимает обычную кнопку, вы закрываете ее.. То же самое с цветом.. Откройте a <span style="backround-color:red"> ..
По сути, вы стилизуете текст div с помощью js .. Попробуйте jquery для упрощения манипулирования dom.