阅读更多
UEditor是一套开源的在线HTML编辑器,是由百度Web前端研发部开发所见即所得富文本Web编辑器。

UEditor在设计上采用了经典的分层架构设计理念,尽量做到功能层次之间的轻度耦合。具体来讲,整个系统分为了核心层、命令插件层和UI层这样三个低耦合的层次。其具有体积小巧、性能优良、使用简单、分层架构,方便定制与扩展等特点。



我们采访了UEditor项目的创始人和核心开发者战毅,请他来详细介绍一下UEditor。

ITeye期待并致力于为国内优秀的开源项目提供一个免费的推广平台,如果你和你的团队希望将自己的开源项目介绍给更多的开发者,或者你希望我们对哪些开源项目进行专访,请告诉我们,发站内短信给ITeye管理员或者发邮件到webmaster@iteye.com即可。

UEditor项目是怎么诞生的? Top

最早是起源于百科,是为百科用户书写百科词条开发的在线编辑器。那时还没有UEditor,就是直接拿CK(CKEditor)作为底层,在上边开发了UI展示组件。

但随着需求的变化,发现项目越来越不可控,因为CK过于复杂。2010年,代码已经有10万行了,做新的功能和修改bug都非常的困难,做编辑器项目的时间远远大于其他项目,而且因为用的是ck底层代码,他很多自身的bug我们无法修改,一旦有修改,可能会引起其他一系列的bug。

那时开会编辑组经常会被问到"bug收敛了吗",尽管我们已经非常努力了。因为这样编辑器被冠以最费力不讨好的项目。做走了很多人,基本上能坚持1年的算很长了。我印象最深的是做空间编辑器项目时,有个QA的MM,一做完编辑器项目就辞职了,原因是太累了。编辑器项目那时完全没有自动化用例,全靠手动测试,我要是修改一个底层代码,那QA要把所有的手动用例都过一遍,可以想象那是多么的痛苦。

基于这些原因,UEditor诞生了,诞生它的想法很简单,就是我们要有一个我们自己完全可控的编辑器,可以满足pm的各种需求和修改各种bug。当时开源的目的就是想能从外部吸收更多的需求和bug,来更好的满足产品线,当时完全没想到,UEditor能做到今天这样,大家都在使用的局面。

目前已有一些优秀的编辑器,为什么还要开发一个?与它们相比,UEditor有哪些更贴近国人使用的特性? Top

主要是因为我们需要一个我们自己完全可控的编辑器。(例如,添加新功能和bug修改)。UEditor现在的功能比ck更加丰富,而且比他要小的多,整体的架构更加清晰。

UEditor的宗旨是打造“最佳的用户编辑体验”,我们在许多细节上完全是效仿Word的实现方式,比如对于多级列表、中文标示的列表、表格的操作、插入代码、粘贴过滤的支持、tab键的支持等等。

在UEditor开发过程中最难的地方是什么?你们是如何解决这一问题的? Top

最难的地方是应该是对range的封装,这是编辑器实现的基础,所有功能实现的核心。

要说解决,那就是自己实现一套,这样才能真正了解和掌握它。对于这块的实现,主要是参考了ck,因为到目前为止,对外的编辑器项目中只有ck和tinymce包括UEditor才是真正用JS实现range,而没有借助编辑器的原生接口。至于为什么不借助原生接口,大家可以看看5月份的程序员杂志,我写了篇《从UEditor谈Web编辑器技术》,详细介绍了这块。

UEditor在百度内部的使用情况如何?使用UEditor的其他公司或项目有哪些? Top

百度内部基本上是全线覆盖了所有对于富文本这块有需求的产品线,现在还在为最后一个产品线百度贴吧,做定制编辑器,做完这个项目,就是100%覆盖了百度的所有产品线了。

在外部,像奇虎、腾讯、盛大、网易、联想等大公司,都在他们的很多项目里使用了UEditor,像51cto、中关村在线、音悦台等主流网站也在使用。还有像很多cms系统也都集成了UEditor。现在,UEditor是国内使用量最多的富文本编辑器项目。

UEditor团队有哪些成员?你们之间是如何分工和协作的? Top

我们现在开发有3个,2个QA同学。上次发布1.2.6时,第一次发布了我们QA同学给我们发的bug列表,当时吓到了好多人,大家都觉得怎么这么多,其实这只是冰山一脚。大家要是看过我们git上的test目录,那里有好几千个自动化用例,这都是QA同学的心血。



一般我们开发一个版本后(包括新功能的测试用例),提交给QA,QA同学进行2-3轮的测试,在这过程中,我们也会对外发布一个线上的测试版本,让大家来帮我们一起测试,最后发布正式版本。

对于发版本的周期,基本上是没有的,就是产品线一闲下来,我们就把一些用户反馈的功能和问题,包括给产品线开发的功能,改造成通用的一起放到新版本里发布。
  • 大小: 57 KB
  • 大小: 123.4 KB
  • 大小: 74.5 KB
  • 大小: 72.6 KB
  • 大小: 224.3 KB
  • 大小: 7.5 KB
  • 大小: 11 KB
  • 大小: 17.6 KB
  • 大小: 7.3 KB
  • 大小: 72.2 KB
  • 大小: 172.7 KB
  • 大小: 29.9 KB
  • 大小: 13.6 KB
  • 大小: 21.8 KB
  • 大小: 7.5 KB
  • 大小: 18.9 KB
  • 大小: 38.7 KB
  • 大小: 43.1 KB
  • 大小: 24.3 KB


评论 共 20 条
20 楼 wjch_111 2019-06-17 16:37
woshiguoguo 写道
灰常垃圾,自从用了之后整天被骂

还是很好用的吧。前端的东西谁也不敢说一点BUG都没有,更没人敢说能兼容所有浏览器所有版本,总的来说,ueditor比较不错的了,代码少,功能丰富。
19 楼 zftzyw 2016-06-01 10:39
   
18 楼 wuzhihui001 2014-04-30 15:02
做的很不错,准备项目上使用,感谢你们的开源 
17 楼 asialee 2014-02-08 16:51
woshiguoguo 写道
灰常垃圾,自从用了之后整天被骂

还行吧,我感觉还行,不知道是什么地方不易用
16 楼 woshiguoguo 2014-02-08 16:45
灰常垃圾,自从用了之后整天被骂
15 楼 ssun125 2013-09-23 22:19
浏览器兼容做得还不是很好。。IE7有点问题。。
14 楼 abc382410124 2013-09-22 11:46
支持一下
13 楼 steafler 2013-08-26 14:33
QA妹子不错啊
12 楼 ae6623 2013-07-29 13:58
富文本必备。用着挺不错的。
11 楼 albertshaw 2013-07-23 16:09
拿到例子一看,还可以插入iframe,于是插入一个iframe指向例子本身,嵌套两次后浏览器崩溃了。。。我是有多无聊
10 楼 zh_harry 2013-07-19 13:50
这种框架我也写了一个,在sparrow 项目里
一共不超过2000行代码,代码通俗易懂,功能还是比较强大的
大家拍砖
java-eye博客地址
http://lizhizhang.iteye.com/blog/1896545
项目中的
实例效果
http://www.zhuaququ.com/publish
9 楼 heisetoufa 2013-07-17 13:36
已经在3个项目中使用了UE,虽然一开始遇到了一些问题,但最终还是被解决了,而且发现了两处没有用转义符的错误,也被我加上了,希望UE的说明文档好好写一下,当初刚用UE的时候,看使用说明文档,对我帮助不大,跟UE的更新速度有点脱节.
8 楼 p4nt1um 2013-07-11 11:53
请问有没有web编辑器支持数学公式甚至化学、物理等学科的专用符号编辑吗?
7 楼 liuchunyin11 2013-07-11 09:38
貌似还不错。、
6 楼 Alex丿 2013-07-08 19:47
不错,项目中已经使用,EM只是前端控件,JSP只供示例,后台自己写
5 楼 asialee 2013-07-06 13:58
yixiandave 写道
试了下很不错,源代码还没仔细看,不过一大堆jsp是怎么回事?我能使用自己的提交接口吗

这个是和java代码集成的,我之前写过一个和java工程集成的小例子: http://asialee.iteye.com/blog/1749341
4 楼 groovyzhou 2013-07-06 10:20
强大呀,建议百度推出类似有道笔记之类的软件,秒杀网易。有道笔记太弱了,至今没有代码高亮功能
3 楼 liminjun 2013-07-05 09:50
3个男生是开发人员,2个女生是QA?5个人的小团队,蛮好的。
2 楼 yixiandave 2013-07-04 09:47
试了下很不错,源代码还没仔细看,不过一大堆jsp是怎么回事?我能使用自己的提交接口吗
1 楼 txc_tang 2013-07-03 17:02
不错,以后在项目中可以使用它,看看效果如何。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 百度ueditor编辑器.zip

    百度ueditor编辑器百度ueditor编辑器百度ueditor编辑器百度ueditor编辑器百度ueditor编辑器百度ueditor编辑器百度ueditor编辑器百度ueditor编辑器百度ueditor编辑器百度ueditor编辑器

  • 百度UEditor编辑器如何关闭抓取远程图片功能

    问题又来了:今天在写百度UEditor编辑器的【取远程图片功能】时有碰到:该功能如何关闭了? 又花了15分钟左右的时间查阅了[官方文档]以及[官方论坛],都没有找到解决办法,那就查阅下源文件看看,是否有相关的判断呢...

  • 织梦搭配百度ueditor编辑器.rar

    utf-8版本和gbk都在里面,用于织梦后台直接可以粘贴图片发表内容 inc_fun_funAdmin.php可用于替换织梦include\inc\inc_fun_funAdmin.php文件 ueditor是可以直接粘贴图片的百度编辑器,放置在织梦include目录下面

  • 百度UEditor编辑器!合入PHP网站!.pdf

    百度UEditor编辑器!合入PHP网站!.pdf

  • 百度ueditor编辑器 word导入功能(asp.net版本)

    因公司需要,自己在网上下了个有word导入功能的百度编辑器,并在这个基础上对该word导入功能进行了完善。(asp.net版本)(注意虚拟路径的问题,可以将虚拟路径去掉)

  • 百度ueditor编辑器

    相当强大的编辑器,使用非常简单吗,可自行选择使用环境

  • 百度UEditor编辑器使用教程与使用方法(图文)

    今天笔者就给大家推荐一款百度UEditor编辑器。关于这款百度UEditor编辑器官网上也有简单的教程,不过看着比较费劲,今天笔者就跟大家分享一下百度UEditor编辑器使用教程与使用方法,希望对大家有所帮助

  • vue 百度编辑器ueditor使用文件

    vue 百度编辑器ueditor使用文件,直接使用在项目即可.

  • vue集成百度UEditor富文本编辑器使用教程

    主要为大家详细介绍了vue集成百度UEditor富文本编辑器的使用教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  • UEditor编辑器兼容音频上传

    UEditor 是一套开源的在线HTML编辑器,UEditor编辑器增加了音频独立上传功能,下载后直接放到自己项目的静态资源目录下即可

  • 百度编辑器UEditor PHP版 v1.4.3

    Ueditor是由百度web前端研发部开发所见即所得的编辑器,具有轻量,可定制,注重用户体验等特点。Ueditor基于BSD开源协议,除了具有代码精简、加载迅速的轻量级特质外,还采用了分层理念,使开发者可以根据实际应用和...

  • 百度富文本编辑器UEditor 1.4.3版本

    百度富文本编辑器UEditor 1.4.3版本

  • 百度编辑器UEditor Asp版源代码

    Ueditor是由百度web前端研发部开发所见即所得的编辑器,具有轻量,可定制,注重用户体验等特点。Ueditor基于BSD开源协议,除了具有代码精简、加载迅速的轻量级特质外,还采用了分层理念,使开发者可以根据实际应用和...

  • 百度编辑器UEditor ASP UTF-8版 v1.4.3.2

    Ueditor是由百度web前端研发部开发所见即所得的编辑器,具有轻量,可定制,注重用户体验等特点。Ueditor基于BSD开源协议,除了具有代码精简、加载迅速的轻量级特质外,还采用了分层理念,使开发者可以根据实际应用和...

  • 百度编辑器UEditor PHP UTF-8版 v1.4.3.2

    Ueditor是由百度web前端研发部开发所见即所得的编辑器,具有轻量,可定制,注重用户体验等特点。Ueditor基于BSD开源协议,除了具有代码精简、加载迅速的轻量级特质外,还采用了分层理念,使开发者可以根据实际应用和...

  • 百度ueditor编辑器jsp版本

    UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,简洁,漂亮,基本功能能实现,也很好用

  • yii2实现Ueditor百度编辑器的示例代码

    主要介绍了yii2实现Ueditor百度编辑器的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  • 基于springboot的招聘求职系统源码数据库文档.zip

    基于springboot的招聘求职系统源码数据库文档.zip

  • 基于springboot的校园自助洗衣服务管理系统源码数据库文档.zip

    基于springboot的校园自助洗衣服务管理系统源码数据库文档.zip

Global site tag (gtag.js) - Google Analytics