如何语法突出显示用户在文本区域中输入的HTML代码?

时间:2011-12-13 06:28:19

标签: javascript html css

我正在构建一个教程应用程序,用户可以在文本区域内输入他们的HTML / Javascript / CSS代码,输入代码后,他们会点击一个名为“render”的按钮。在按钮单击时,用户输入的代码将在div中呈现。

应用程序本身是用HTML5和Javascript编写的。

问题是当用户在文本区域内键入代码时,它会以平面文本/或文本区域的文本属性(如果我通过CSS设置)进行输入。

有没有办法在我的文本区域提供语法高亮功能(这在许多文本编辑器中很常见,包括visual studio)?

4 个答案:

答案 0 :(得分:1)

你见过ecoder吗?

哪个基于EditArea(请参阅live examples)。

答案 1 :(得分:1)

这是一个有点重量级的,但是Ace是一个非常了不起的项目,可以满足您的要求和更多。试试kitchen sink demo来感受它,但它可以占用任何textarea,并制作一个完整的文本编辑器。

Mozilla tri-licensed Mozilla (MPL/GPL/LGPL) code on GitHub

答案 2 :(得分:1)

CodeMirror会为你做这件事并且非常出色。它有一个HTML mode

答案 3 :(得分:0)

从头开始这是一项艰难的项目,这就是为什么有工具已经做到了这一点。

您可以在此处查看一些工具:http://en.wikipedia.org/wiki/Online_rich-text_editor

其中大部分都是开源的,因此您可以非常轻松地添加功能,使其按照您喜欢的方式工作。