回主页

笨活儿关注Web前端和网页设计,同时兼顾用户体验,致力于将国外的优秀教程汉化,并不定期推荐免费优秀影视娱乐资源。

订阅本博客。


  • About/关于
  • Browse/浏览
  • Portfolio/作品集
  • Search/搜索

TOPICS/主题:英国达人中文字幕 网页设计 免费资源 Web前端 感受年轻 边翻译边学习More...


  • « 面试心得
  • 浅谈前端新人的职业规划 »
发表时间:十月 29 ↓ 有话想说

淘宝开源编辑器KISSY Editor试用报告

由 慵云 发表于 前端开发 分类下  发表时间:星期四, 十月 29, 2009 19:57

前几天淘宝发布了自己的富文本编辑器KISSY Editor,主要开发者是TaobaoUED的前端工程师玉伯,网上的可视化富文本编辑器众多,本人前段时间也因为要做一个论坛,尝试过在网页中整合这些已有的编辑器(因为自己实在写不出来啊…… =.= )。网上已有的编辑器基本试了个遍,最后选定了人人网的实现方式——自写插件整合TinyMCE。不仅参考了他们的源代码,而且很无耻地盗链了xnimg.cn上的 js 文件(示例 发布后又发现了一些bug,还没来得及修正)。咳咳,只是学习学习而已,还望淫淫的同学不要来追究我的责任。

作为行业标杆的淘宝前端放出自己的开源编辑器,当然要关注一下。

首先简要评价一下我用过的一些编辑器(比较八卦,技术牛人请自动跳过):

  1. CKEditor 以前的FCKEditor,最老牌的JavaScript RTE之一,换名字后的新网站很漂亮,但是皮肤比较丑,所以我自己做站肯定不会用他。目前在用CKEditor或FCKEditor的网站包括译言、cnBeta、百度空间等…
  2. TinyMCE 界面很优雅,最出名的应用就是WordPress后台的文章编辑页面了… 文档完善,自定义插件也相当容易。这大概也是人人网选用TinyMCE的一大原因。
  3. Google Docs的编辑器 岂可用“强大”二字形容。必须说“很好很强大”…. 不过我辈只有观瞻的分,人家没有开源,开了源你也用不上…
  4. QQ邮箱的编辑器 小巧而强大,但用户体验欠佳。而且英文版的时候,在Firefox下是一塌糊涂……(不知道现在修正过来没有)
  5. QQ空间的编辑器 一些交互细节值得称道,但可用性不敢恭维。
  6. 搜狐白社会的编辑器 简单的功能造就了迅猛的加载速度。icon有点丑。=.=
  7. Discuz的编辑器 完全就是一个怪物。

此外,还有NicEdit、openwysiwyg等独立js编辑器,和一些基于类库的编辑器。jQuery有jwysiwyg (读作/dʒei’wiziwig/),YUI有YUI RTE,mootools也有wysiwyg插件,不过好像都缺少后续更新。还是TinyMCE和CKEditor比较活跃啊~


淘宝此次发布的编辑器,基于YUI构建,而且是YUI 2.x,诚如“摇滚肉包子”所言,这多多少少会给编辑器的推广带来一些阻碍。但到底好不好用呢?还是试过之后才知道:

1. 界面

现在这款皮肤,和Google Docs很接近,字体颜色拾取器也是借鉴了Google Docs,很好用。总体来说清新舒爽,不油不腻,简洁实用…  不过不太喜欢字体下拉菜单的蓝色:

kissy01

这是绝对的链接色。这种菜单,用黑色就很好:

kissy02

(弹出层和按钮左侧有两个像素的距离,我不知道作者是不是故意不对齐的。)

期待淘宝UED的视觉设计达人们能加入到后续版本的开发中,设计出一套更加漂亮的皮肤来。感觉淘宝整站的这种“外凸渐变”实在太多了,不够elegant…

据说插入链接/图片的浮动层样式参考了搜狐白社会,十分紧凑,适合这种小巧的社区发帖编辑器。

2. 功能

目前只实现了一些常用的编辑器功能,字体样式、图片和链接插入、缩进和对齐等。没有清除样式的按钮,直接添加标题(h1~h6)、引用(blockquote)等语义化标签的按钮也没有,从Word中复制内容得到的html源码也十分混乱。不过通过查看js源码,可以看出作者预留了很多接口,底层代码也算是博采众长,插件和皮肤和的自定义还算方便。

作者透露的开发计划是:

紧接着的二期里,将进一步完善基础架构和插件体系,并提供 Undo/Redo, 插入Flash, 表格编辑和预置模板等功能。

另外一些细节,比如说插入图片时URL没有基本的正则验证,当没有p标签包裹时按回车键只会出现br换行,字体的样式和颜色是使用的font标签来设置,等等…… 可能会让一些细节控/语义控觉得受不了。

更多bug和改进建议可以参考updates list。(话说淘宝影响力就是大啊,发布不过一周,提交的bug已经近80个了…)

3. 浏览器兼容

稍微测试了一下,发现的问题有:

  1. ie和ff之外的浏览器不能使用图片大小重设
  2. opera里缩进按钮失效
  3. ie中把图片右对齐,会出现烦人的横向滚动条
  4. …

更多兼容性问题,请继续参考updates list…..

4. 大小

KISSY以“小巧灵活,简洁实用”为开发理念,功能实现上遵循着实用主义,但是又保持了相当高的灵活性和可扩展性。

KISSY Editor依赖于YUI的yahoo-dom-event,两者压缩到一个文件后的大小为94k,而TinyMCE在同样的压缩规则下大小为162k。相比于TinyMCE强大的功能,KISSY的尺寸似乎略显臃肿… 对广大站长的号召力似乎不是很大。yahoo-dom-event占到总代码量的近2/3,不知道如果让KISSY独立起来,总代码量会减少多少?

很早以前我就想要一个jQuery版的TinyMCE,因为那得节省多少代码啊~  KISSY Editor还这么新,不知道有没有可能从一开始就整一系列基于多类库的版本?(哇… 类库,内裤,这个词好….)同步开发应该好维护些,不然以后代码庞大起来,要转移内裤就更难搞了。

5. 性能

把插件弹出层的HTML代码写到js里,真是一个好idea… 非常受不了WordPress后台那基于远程HTML文档的模态窗口,网速慢的时候,插入链接这么简单的操作,都要等十秒以上……

至于KISSY这个编辑器的内存占用、代码洁净程度等需要高强度测试的高科技问题,就还是等其他牛人来搞啦… 笔者没有这个水平。

报告完毕!———~—~–~–~-~–妖艳的分割线–~-~–~–~——–

即刻试用KISSY Editor |  在Google Code上的项目主页 在 GitHub 上的KISSY项目主页 |  开发者博客

你应该也会喜欢:
  1. 即刻提升jQuery性能的十个技巧[TUTS+]
  2. 40个实用的轻量级JavaScript库[SM]
  3. 给JavaScript新手的24条实用建议[TUTS+]
  4. [Drupal模板制作手册-4]主题的.info文件

标签:JavaScript • RTE • 淘宝

© 笨活儿   允许转载,但请以链接形式保留出处。也欢迎您使用RSS订阅本博客。

  • « 面试心得
  • 浅谈前端新人的职业规划 »

此文被敲了 9 下了已经

  1. gavin ←@
    十月 29, 2009 11:46 下午

    前天面淘宝失败了……唯有看楼主博客以飨寂寞

    • 慵云 ←@
      十二月 6, 2009 2:12 下午

      面的什么职位呢?

  2. 多果 ←@
    十一月 6, 2009 4:25 下午

    想想WordPress编辑器吧!连改字号都没…… Oh my god!

    • 慵云 ←@
      十一月 7, 2009 8:49 上午

      我觉得改字号也没什么用。使用结构化文档+主题的CSS定义,完全可以满足运用需求。段落内的强调文本,用加粗或改颜色就可以了。

  3. army8735 ←@
    十二月 8, 2009 1:23 下午

    你忽视了kindeditor。

  4. Vin ←@
    三月 31, 2010 5:20 下午

    怎么用啊 比如怎么用js获取值和赋值
    期待您的回答

    • 慵云 ←@
      四月 17, 2010 5:05 下午

      建议你看一下示例里的源码。

  5. Rekey ←@
    五月 3, 2010 12:22 上午

    你整合到了Discuz么?

  6. Coooold » 22个流行的富文本编辑器 ←@
    八月 31, 2011 4:41 下午

    [...] 这么多编辑器都是国外的,国内的基本不见其踪。笨活儿的博客上面如是评价国内编辑器: “QQ邮箱的编辑器 小巧而强大,但用户体验欠佳。而且英文版的时候,在Firefox下是一塌糊涂……(不知道现在修正过来没有) QQ空间的编辑器 一些交互细节值得称道,但可用性不敢恭维。 搜狐白社会的编辑器 简单的功能造就了迅猛的加载速度。icon有点丑。=.= Discuz的编辑器 完全就是一个怪物。” [...]

多说话有益身体健康

点击这里取消回复。

请勿发表“顶”、“好”、“很有用”之类对他人没有帮助的话。欢迎针对文章内容发表您自己的真知灼见。

点击人名后面的 ←@ 可以回复TA。如果已经超过回复层级,您可以在上一级回复,并记得加上“@称呼”以注明您回复的是谁。

您可以订阅本文的RSS供稿,及时了解大家的讨论进度。


唠唠叨叨:
  • 02月03日
     ktmud: RT @adam_baldwin: I started a little node.js project called helmet to implement various security headers as express middleware. https:// ... 
  • 02月03日
     ktmud: 对一个马克思主义者,所能说的最动听的情话就是——“让我做你的恩格斯吧!” 
  • 02月02日
     ktmud: @ohdarling88 淘宝商品的信用卡标识好像是指用信用卡直接付款,类似于在商户POS机上刷卡,一般要手续费的吧(大部分卖家会让买家给) 
  • 02月02日
     ktmud: @ohdarling88 500元以下 招行信用卡可以用网银直接支付 
  • 02月02日
     ktmud: 事情没做好时我们常会怪自己目标没找对,或者无不惋惜地娇嗔,哎呀,又走冤枉路了,其实本质上根本就是自己能力不行... 

follow me!


  • 日历 Calendar

    2012 年二月
    一二三四五六日
    « 十二  
     12345
    6789101112
    13141516171819
    20212223242526
    272829 
  • 分类文章 Categories

    • Web技术 (28)
      • 交互和UE (2)
      • 前端开发 (14)
      • 网页设计 (9)
    • 人微言轻 (20)
    • 外语笔记 (10)
      • 英语精译精析 (6)
    • 好康推荐 (16)
    • 娱乐至死 (54)
    • 生活琐碎 (52)
    • 设计丛谈 (5)
  • 有情博客 Blogroll

    • 个篱: 音乐媒体观察
    • 偶为“英音”狂
    • 奇技淫巧
    • 小苑
    • 岁月如歌
    • 明城
    • 暂不留名
  • 博客群落 MyBlogs

    • 一同堕落
    • 丘迟的维基
    • 千吨泥 – 前端技术
    • 千吨泥维基
    • 千吨瞎想
    • 超哥爱你

人人 | 豆瓣 | Last.Fm | Facebook | Google Reader | 百度 | 维基百科

© 笨活儿 2009

本站所有内容均可自由转载,但请遵循CC协议规定

Powered By WordPress, Original Theme by BenHuoer