代码改变世界

我的第一个开源作品:jUEditor - 基于jQuery的轻量级UBB可视化编辑器

  JimLiu  阅读(8289)  评论(54编辑  收藏  举报

  UBB代码是一种广泛用于论坛的代码格式,使用类似于[b]粗体[/b]的格式而不是使用(X)HTML标签,可以有效地进行tag安全性过滤,目前几乎所有的成熟论坛系统都支持UBB代码。

  由于要做论坛,需要用UBB编辑器,目前能找到的比较广泛的一个版本是Discuz!用的可视化UBB编辑器,其他基本上都是只能文本编辑的。由于Discuz! UBB编辑器的功能比较强,有些功能我用不上,而且那个版本用起来独立性相对比较弱,有很多全局变量。所以我便萌生了自己做一个的念头。

  UBB编辑器不同于一般的HTML编辑器,虽然都需要有在线可视化编辑的功能,但是一个的目标代码是(X)HTML,一个的目标是UBB代码。所以首先需要的是这二者的转换问题,我编写了ubbutils.js负责这方面的工作。另一方面就是它们的共同点——可视化编辑,参考了Discuz! UBB编辑器的代码和网上很多编辑器的代码下,我编写了editor.js来做编辑器功能性相关的内容。

  为了让程序的独立性更高,我极力避免全局变量的存在,使用prototype写法来实现JavaScript对OO的模拟,同时简化公开参数,使用增强textarea而不是独立载入的方法,是一种装饰者模式的应用,使得可以在原有的应用上扩展UBB可视化编辑功能。

  经过3~4天的编码总算让第一个非常简陋的版本可以使用了,经我自己测试在IE6/7、Firefox 3、Chrome 1.0下可以正常使用(IE6在用户体验上会欠缺一点)。

  截图预览

截图

  它最大的特点就是非常简洁和小巧——首先是简洁:可以通过一句javascript完成对textarea的扩展。其次是小巧:除了jquery.js,源文件只有不到30k,压缩后仅仅不到20k,如果经过了gzip就是个位数了。如果应用中本身采用了jQuery就很划算了。

  这个编辑器是完全开源和免费的——真的是免费!没有任何License的限制!(不要骂我没知识产权意识- -),需要的朋友可以自由下载使用,压缩包内包含src(源文件)、build(使用YUI Compressor压缩后的文件)、demo和jquery.js 1.2.6。有兴趣的朋友也可以阅读src一起探讨。

  下载链接

  希望用了的朋友能多多向我反映其中的BUG,毕竟一人之力嘛,呵呵!

  与诸君共勉。

编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
点击右上角即可分享
微信分享提示