edui 富文本编辑_百度umeditor富文本编辑器插件扩展

本文介绍了如何为百度的轻量级富文本编辑器umeditor添加自定义插件,以实现代码插入和附件上传功能。通过创建`plugins`文件夹、编写`plugins.js`文件以及借助layer弹窗组件,详细阐述了插件的创建过程和使用方法。
摘要由CSDN通过智能技术生成

富文本编辑器在WEB开发中经常用到,个人比较喜欢用百度出的ueditor这款,ueditor这款本身支持插件扩展的,但是ueditor的mini版本 umeditor 就没有那么方便了,不过找了很多资料根据这些资料琢磨出了如果给umeditor添加插件,这个案例中将实现增加代码和附件插入.

准备工作:

1.umeditor下载:

https://github.com/fex-team/umeditor/releases

2.插件弹窗使用的是 layer:

http://layer.layui.com/?alone

如何创建插件?

第一步:我们在编辑器umeditor目录下创建一个plugins的文件夹,这里用来存放我们自定义的插件,如上图,我们定义了一个代码(code)以及附件(attachment)插件

第二步:创建plugins.js文件,这里用来封装我们插件的信息,代码如下

//定义插件容器

var plugins = new Array();

//注册插件

function registerPlugins() {

//添加代码插件

plugins['code'] = new function () {

//注册界面事件

var result = new Object();

result.CodeObj = {};

//注册指定事件

UM.registerUI('code',

function (name) {

var me = this;

var $btn = $.eduibutton({

icon: 'source',

click: function () {

var layIndex = layer.open({

type: 2,

title: '源代码',

maxmin: false,

shadeClose: true, //点击遮罩关闭层

area: ['620px', '380px'],

content: '/lib/umeditor/plugins/code/code.html',

btn: ['确定', '取消'],

btn1: function (index) {

if (result.CodeObj.codeContent != '') {

//把内容插入编辑器

var html = '

' + result.CodeObj.codeContent + '
';

me.execCommand('insertHtml', html);

}

//关闭弹窗并且清空当次内容

layer.close(layIndex);

result.CodeObj = {};

//UM.getEditor('container').setContent(html, true);

},

btn2: function (index) {

//关闭当前弹窗 并且清空当前数据容器

layer.close(layIndex);

result.CodeObj = {};

}

});

},

title: '源代码'

});

me.addListener('selectionchange', function () {

//切换为不可编辑时,把自己变灰

var state = this.queryCommandState(name);

$btn.edui().disabled(state == -1).active(state == 1)

});

return $btn;

}

);

return result;

};

//添加代码插件

UMeditor,简称UM,是为满足广大门户网站对于简单发帖框,或者回复框需求所定制的在线富文本编辑器UM的主要特点就是容量和加载速度上的改变,全版本的代码量为125k,而且放弃了使用传统的iframe模式,采用了div的加载方式, 以达到更快的加载速度和零加载失败率。现在UM的第一个使用者是百度贴吧,贴吧每天几亿的pv是对UM各种指标的最好测试平台。 当然随着代码的减少,UM的功能对于UE来说还是有所减少,但我们经过调研和大家对于UM提出的各种意见,提供了现在UM的功能版本, 虽然有删减,但也有增加,比如拖拽图片上传,chrome的图片拖动改变大小等。让UM能在功能和体积上达到一个平衡。我们的目标不仅是要提高在线编辑编辑体验,也希望能改变前端技术中关于富文本技术的门槛,让大家不再觉得这块是个大坑。1.2.2更新说明: ### 功能更新 1. **添加插入数学公式** 2. 支持插入动态地图 3. 支持复制图片、截屏图片的粘贴 4. 添加自动保存插件,支持草稿箱功能 5. 支持拖放图片上传并插入 6. 优化了对IE11的支持 7. 支持asp后台### 问题修复 1. 修复表情本地化出错问题 2. 修复jquery的$变量冲突问题 3. 修复多编辑器,弹层被遮挡和出错问题 4. 解决于bootstrap的冲突 5. 修复粘贴后光标定位错误的问题 6. 修复一坨坨的细节BUG
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值