Создавайте красиво отформатированный текст в своем веб-приложении. Trix — это WYSIWYG-редактор для написания сообщений, комментариев, статей и списков — простых документов, из которых состоит большинство веб-приложений. Он имеет сложную модель документа, поддерживает встроенные вложения и выводит краткий и последовательный HTML.
Большинство WYSIWYG-редакторов представляют собой оболочки HTML-интерфейсов contenteditable и execCommand API, разработанных Microsoft для поддержки редактирования веб-страниц в реальном времени в Internet Explorer 5.5 и, в конечном итоге, реконструированных и скопированных другими браузерами.
Поскольку эти API никогда не были полностью специфицированы или задокументированы, а масштаб HTML-редакторов WYSIWYG огромен, реализация каждого браузера имеет свой собственный набор ошибок и особенностей, и разработчикам JavaScript приходится устранять несоответствия.
Trix обходит эти несоответствия, рассматривая contenteditable как устройство ввода-вывода: когда ввод поступает в редактор, Trix преобразует этот ввод в операцию редактирования своей внутренней модели документа, а затем повторно отображает этот документ обратно в редактор. Это дает Trix полный контроль над тем, что происходит после каждого нажатия клавиши, и вообще исключает необходимость использования execCommand.