一个简单,丰富的JavaScript文本编辑器,可生成一致的标签?

use*_*389 5 html javascript html5 text editor

我正在尝试开发一个Web应用程序,允许用户在自己身上存储一个小的"关于我"部分.为简单起见,我想使用基于JS的编辑器和典型的格式化功能,即.粗体,斜体,下划线,不同的字体大小和颜色等.

我尝试自己滚动,但我发现contentEditable有一个讨厌的习惯,就是在不同的浏览器中生成不同的标签(例如,有些插入的标签比其他标签更多,有些将不同的段落分成p标签......)出于安全原因,存储原始HTML是不可能的,我发现编写一个可以解释所有这些差异并以标准格式正确存储输出的解析器非常困难(即用\n取代每个换行符存储比一个替换操作更困难).

那么,是否有任何文本编辑器可以在大多数/所有现代浏览器中使用,更重要的是,在每个浏览器中生成相同的标签,以便我可以以相同的方式解析它们?

提前致谢!^^

Arn*_*ekk 6

我想如果你想要一个所见即所得的编辑器,那么就没有办法绕过 contenteditable。然而,由于问题是 HTML 的语义结构,所以我找到了一个库,它可以确保 html 是语义的、简单的和干净的:

https://jakiestfu.github.io/Medium.js/

另一种选择是他们在 stackexchange 中使用的。一个输入字段,您可以在其中放置不同的标签以进行格式化。phpBB 使用与 BBCode 类似的方法。您将需要一个解析器服务器端,如果找不到,您可能必须编写它。更多信息:

https://code.google.com/p/pagedown/

https://code.google.com/p/markdownsharp/ (C#)

http://www.bbcode.org/

http://webcheatsheet.com/javascript/bbcode_editor.php (PHP)