Typecho 的项目已经启动。小组需要个功能强大而且小巧,并且容易 Hack 的 Javascript 编辑器。我首先想到的是 FCKEditor 以及 TinyMCE 。
FCKEditor 功能虽然强大、插件众多,但代码量和占用的客户端的资源也是巨大的。 TinyMCE 相对小巧,功能方面也并不弱,不过其使用协议还是很多不明确的地方。
在 sluck 以及 joyqi 兄弟的推荐下,尝试使用一款名为 nicEdit 的编辑器,基本上表示满意。
功能方面,nicEdit 已经满足了基本编辑器的需求。而我关注的代码方面,它也是非常精简的。整个编辑器就是声明了个大的 nicEdit 的类(非常的环保),扩展起来非常的容易。
推荐对 Javascript 有兴趣,并且想了解编辑器原理的朋友可以看下它的代码,收获会良多。最后,在看其代码的同时,顺便汉化了下,汉化以后的包可以在 这里下载 。
同时,也可以先看下我 Blog 上面扔的 DEMO
至今没有一个 rich editor 最终生成的 HTML 代码能让我满意的,包括这个 nicEdit。YUI 的 Rich Editor 朝这方面努力,遗憾的是 bug 还很多,应用于生产环境还有些风险。
关于富文本编辑器的实现方式和生成代码,现在浏览器都各不相同,也没有什么组织出来呼吁标准什么的,一片混乱,各行其是。
@realazy 感谢回复,目前的富文本编辑器的确只是在功能和效果方面扩充。正因为如此,对于编辑器生成的 HTML 代码,在我实际开发中也非常的头痛 -- 而且,并不是每个 Blogger 都需要了解 HTML 代码技术细节方面的问题。
我一般都用 HTMLTidy 进行代码格式化才加入数据库。
不过有些特殊标签和属性的过滤还是很头疼。特别是评论如果开了 HTML 编辑器,过滤后很难保证通过 XHTML 验证。
那想在从本机上载图片,那昨搞?因为其现在是一个URL来的
大哥 能和我说下这个编辑器的原理么?我看它是复制textarea 里面的文本到div 里并让textarea display:none那么现在div 里面怎么继续编辑呢 他又没有编辑功能
问一下,nicedit有什么好办法能禁止用户直接粘贴带格式的文字包括图片么?
nicedit 非要用户在编辑框中点击一下 工具栏才能变亮,不能让用户直接就在工具栏上点击图片ICON就开始上传一个图片,不知道有没有好的解决方法,和现在大多数网站的富文本编辑器用法一样:工具栏永远都是亮的?
@ifthenelse 搞定,修改了下代码,发给原作者看下,算是建议也成~