百度编辑器二次开发常用手记整理小结
发布时间:2023-10-22 20:28:33
标签:百度编辑器,二次开发
创建自定义编辑器:
//引入editor_config.js,editor_api.js,ueditor.css文件,然后在body中创建编辑器实例与父容器
<div id="myEditor"></div>
<script type="text/javascript">
var editorOption = {
toolbars:[['FullScreen', 'Source', 'Undo', 'Redo','Bold']],
autoClearinitialContent:true,
wordCount:false,
};
var editor_a = new baidu.editor.ui.Editor(editorOption);
editor_a.render( 'myEditor' );
</script>
配置弹出工具按钮:
//editor_config.js editorui.js文件中找到toolbars labelMap iframeUrlMap btnCmds dialogBtns 五个参数进行配置
//toolbars:工具或下拉框参数,
//labelMap:工具按钮提示信息
//iframeUrlMap:弹出插件URL路径
//btnCmds:工具按钮统一触发命令
//dialogBtns:弹出命令
//注册插件 []传入的是toolbars中的参数
UE.plugins[] = function(){
....
execCommand:function(cmdName,myobject){
....
}
}
配置命令工具按钮:
//editor_config.js editorui.js文件中找到toolbars labelMap btnCmds
//注册命令工具按钮 []传入的是toolbars中的参数
UE.commands[] = function(){
.....
execCommand:function(){
.....
}
}
右键按钮配置:
//editor_config.js contextmenu.js文件中找到toolbars labelMap items三个参数进行配置
//命令右键配置
items:
{
label:"", [右键名字]
cmdName:"",[toolbars参数中所配置的名字]
exec:function(){
this.execCommand("");[toolbars参数中所配置的名字]
}
}
//注册右键按钮命令
UE.commands[] = function(){
execCommand:function(){
.......
}
}
注:注册右键按钮命令[]中依然是toolbars参数中所配置的名字
//插件右键配置[]传入的参数是toolbars中的参数
items:
{
label:"",
cmdName:"",
exec:function(){
if(UE.ui[]){
new UE.ui[](this);
}
this.ui._dialogs['...Dialog'].open();
}
}
//注册右键插件 []传入的参数是toolbars中的参数
UE.plugins[] = function(){
....
execCommand:function(cmdName,myobject){
....
}
}
插件命令配置:
UE.plugins[] = function(){
var me = this;
//注册鼠标和键盘事件
me.addListener('mousedown',_mouseDownEvent);
me.addListener('keydown',function(type,evt){...});
me.addListener('mouseup',function(){});
//查询当前命令状态
queryCommandState:function(cmdName){}
//命令执行主体
exeCommand:function(cmdName,myobject){}
//获取命令执行结果
queryCommandValue:function(cmdName){}
}
插件弹出执行注册:
dialog.onok = function(){
editor.execCommand("",""); //两个参数,功能参数,我们自己需要传入的值
dialog.close();
}
一些操作类,实用:
//editor.selection.getRange() 查询范围方法
//editor类,此类用于初始化的一些设置,比如获取内容,设置高宽,设置编辑器内容等等。
//domUtils类,此类用于不同帧内dom节点的操作,比如获取父节点,节点属性,文本内容等等。
//browser类,此类用于检测游览器,比如判断IE火狐等。
//EventBase类,此类用基础事件的注册类,比如鼠标,键盘事件等。
//ajax类,此类用于ajax工具类。
//暂时在工作里只用到了上述,代码的组织结构,都还木有研究。
如何给百度编辑器editor扩展
百度编辑器的editor对象中,是百度编辑器所有方法对象,在扩展时,只需要在首页实例中,添加方法。editor.xx = {}。
在任何的页面中editor对象,都可以点出我们在首页中定义的扩展方法。


猜你喜欢
- Python的MySQLdb模块是Python连接MySQL的一个模块,默认查询结果返回是tuple类型,只能通过0,1..等索引下标访问数
- 平行坐标图,一种数据可视化的方式。以多个垂直平行的坐标轴表示多个维度,以维度上的刻度表示在该属性上对应值,相连而得的一个折线表示一个样本,以
- 笔者在网站开发中,采用PHP4.0+MySQL3.23.38建立了多种应用。下面,以一个简单的聊天室设计为例,介绍PHP+MySQL在网页开
- 本文实例为大家分享了python爬取51job中hr的邮箱具体代码,供大家参考,具体内容如下#encoding=utf8import url
- 原始数据和目标数据实现SQL语句(最大)selectshop,month,greatest(dz,fz,sp) as maxfromtabl
- 在批评Python的讨论中,常常说起Python多线程是多么的难用。还有人对 global interpreter lock(也被亲切的称为
- 转:coolcode.cn前几天写了一篇在任意字符集下正常显示网页的方法,里面介绍的很简单,就是把前128个字符以外的字符集都用
- 复制目录: 包含多层子目录方法: 递归, 深度遍历,广度遍历深度遍历&广度遍历:思路:1.获得源目录子级目录,并设置目标目录的子级路
- 雷达图雷达图是以从同一点开始的轴上表示的三个或更多个定量变量的二维图表的形式显示多变量数据的图形方法。轴的相对位置和角度通常是无信息的。 雷
- 前言相当不错的 Javascript 编程风格规范,建议大家采用此规范编写 Javascript。原文链接: http://dojotool
- 前言最近补 Golang channel 方面八股的时候发现用 channel 实现一个优雅退出功能好像不是很难,之前写的 HTTP 框架刚
- 在一些情况下,MySQL可以直接使用索引来满足一个 ORDER BY 或 GROUP BY 子句而无需做额外的排序。尽管 ORDER BY
- vue数据变化被watch监听处理监听当前vue文件数据例如,当前的vue文件的data中有如下属性:data() {  
- python除了关键字(keywords)和内置的类型和函数(builtins),更多的功能是通过libraries(即modules)来提
- web.config第一种方法:<?xml version="1.0" encoding="utf-8&
- 前言之前用过Eel做的桌面应用觉得已经够 * 了,不过由于Eel是调用Chrome,时常出现各种小问题,比如窗口大小设置后有时候不管用,鼠标右键
- asp十进制转二进制;二进制转十进制;二进制转十六进制;十六进制转二进制;八进制转二进制'二进制转八进制;八进制转十进制;十六进制转
- 本文实例讲述了python实现可将字符转换成大写的tcp服务器。分享给大家供大家参考。具体分析如下:下面的python代码执行后通过tcp监
- 本文实例为大家分享了Python读取MySQL数据库表数据的具体代码,供大家参考,具体内容如下环境:Python 3.6 ,Window 6
- 一 导入 pymongofrom pymongo import MongoClient二 连接服务器 端口号 27017连接MongoDB连