@
cbsw 富文本编辑器是非常有难度的。我曾经尝试过,失败,劝你……还是别试了。
首先你需要用到浏览器自己的一套函数库,然后用在一个contentEditable的域上。
你自己是不能定义插入的代码的,这些代码由浏览器自行决定。但是所插入的内容没有标准,IE6是一个,IE其他是一个,IE9貌似又是一个,Chrome(Webkit)是一个,Firefox是一个,还有其他数不清的浏览器。
这些代码需要自行解析,然后安全的存到数据库里。
按照我的习惯,过程是这样:
写入:解析器源(浏览器产生的代码) -> 网站样式码(BBCode之类的东西) -> 程序通过网站样式码解析出一份标准HTML -> 将网站样式码(BBCode)和标准HTML(用作直接显示的缓存)存进数据库。
取出:程序取出网站样式码(BBCode) -> 输出给解析器 -> 解析器分析网站样式码包裹的文本,然后重新执行编辑器函数(比如加粗、斜体指令)来应用样式。
按照我的方式,解析器你就需要做两个,一个后端用来做渲染的,一个Javascript用来做还原的。
此外还有浏览器兼容的问题。
// 我是后端程序员