许多项目都会或多或少的结合许多第三的组件,恰好,遇到了UMeditor富文本组件,因为它及其精简,功能强大,有专业团队维护,所以,我选择了它,而且它出色的完成项目中的全部功能的需求,对此,我说一下,二次开发的技巧总结:
1.创建一个富文本编辑器UMEditor,“closeIDE”就是要增加的一个按钮
var ue = UM.getEditor('myEditorList', {
toolbar: [
' source | undo redo | bold italic underline strikethrough | superscript subscript | forecolor backcolor |removeformat | ',
' fontfamily fontsize',
'| justifyleft justifycenter justifyright justifyjustify |',
'link unlink ',
'formula ', 'closeIDE'
]
});
2.在\ueditor\lang\en\en.js中添加closeIDE,及其汉语提示
'closeIDE':'关闭编辑器'
3.在\themes\default\css\umeditor.css 这个是请求一张PNG图片(包含工具箱所有的图标)
.edui-btn-toolbar .edui-btn .edui-icon{
width: 20px;
height: 20px;
margin: ;
padding:;
background-repeat: no-repeat;
background-image: url(../images/icons.png);
background-image: url(../images/icons.gif) \;
}
然后给新添的按钮设置图标,我这里还是用的上述图片里的
.edui-btn-toolbar .edui-btn .edui-icon-closeIDE{ background-position:-360px -40px; }
上述步骤完成之后,主要的开始了,就是注册该按钮
UM.registerUI('closeIDE', function (name) {
//注册按钮执行时的command命令,使用命令默认就会带有回退操作
var me = this;
var options = me.options;
var $btn = $.eduibutton({
icon: name,
click: function () {
UM.getEditor('myEditorList').setHide();
$("#" + options.type).val(ue.getContent().replace("<p>", "").replace("</p>", "").replace("<br/>", ""));
},
title: this.getLang('labelMap')[name] || '',
}); this.addListener('selectionchange', function () {
var state = this.queryCommandState(name);
$btn.edui().disabled(state == -).active(state == )
});
return $btn;
});
此处可以很简单理解:click事件:可以用来实现自己的逻辑,这也是我比较关心的,其过程就是初始化一个按钮
效果图:
参考资料:http://ueditor.baidu.com/website/document.html
UMEditor 二次开发技术实践的更多相关文章
-
运用Java对微信公众平台二次开发技术——开发者模式接入
当初我在这碰到了很多问题,市面上以及网络上的资料特别少,所以当初碰了很多壁,所以现在跟大家分享一下,如何用Java,对微信公众平台进行二次开发. 一.开发预备知识: 最基本的JavaSE与JavaWe ...
-
[转载].NET Web开发技术(补充)
大家在工作应该养成善于总结的习惯,总结你所学习.使用的技术,总结你所工作事项的比较好的地方,善于总结不断的沉淀优化自己.适时停下来总结下过去走过的路,才能让我们的未来走的更坚定.文章转自JamesLi ...
-
Autodesk 最新开发技术研讨会 -8月22日-Autodesk北京办公室
为了增进与广大中国地区Autodesk产品的二次开发人员的了解与互动,帮助中国地区的Autodesk产品二次开发人员了解Autodesk最新的二次开发技术动向,并获得Autodesk公司专业开发支持顾 ...
-
SPSS二次开发
在以前关于SPSS二次开发文章中留下过自己联系方式,差不多一年的时间,零零散散的和我取得联系的人也有几十位,看来对于SPSS二次开发的需求不少. Web SPSS系统是利用SPSS二次开发技术,使用户 ...
-
Autodesk 招聘Revit二次开发咨询顾问,与Autodesk全球团队紧密合作,提高职业生涯的好机会
朋友们, 因为我离开Autodesk的全职工作(变为部分时间工作),我的职位空出.急招这个职位.请踊跃把你周围的朋友推荐给Autodesk. 请将简历发给我转交给Autodesk 我的邮箱yexion ...
-
23 Pro/E二次开发中的问题记录
0 引言 由于项目中涉及到Pro/E的二次开发技术,因此在边用边学的情况下,解决了不少问题,也积攒了不少问题.其中有些问题可能不是调个函数就能搞定的,得了解CAD底层的东西. 1 问题描述 (1)CA ...
-
踏上Revit二次开发之路 0 序
0 序 近来,由于工作上的需要,开始自学Revit二次开发. Revit由欧特克公司专为BIM构建,是建筑业体系中使用最广泛的软件之一.借助欧特克公司在我国市场占有率方面的绝对优势,甚至给不少人带来& ...
-
Laravel入门及实践,快速上手ThinkSNS+二次开发
温馨提示: l 本文纯干货,文字和代码居多,且适合零基础Laravel学习者: l 本文会新建一个名为 blog 的 Laravel 程序,这是一个非常简单的博客. l 欢迎随时关注ThinkSNS ...
-
鸿蒙HarmonyOS应用开发落地实践,Harmony Go 技术沙龙落地北京
12月26日,华为消费者BG软件部开源中心与51CTO Harmony OS技术社区携手,共同主办了主题为"Harmony OS 应用开发落地实践"的 Harmony Go 技术沙 ...
随机推荐
-
https://zeroc.com/index.html
https://zeroc.com/index.html http://blog.shutupandcode.net/?p=1085
-
金山快盘+TortoiseSVN构建版本控制仓库
金山会盘+TortoiseSVN构建版本控制仓库 之前写过一篇文章介绍 如何利用花生壳和VisualSVN Server建立远程代码仓库,具体请参照: <如何利用花生壳和VisualSVN Se ...
-
418. Sentence Screen Fitting
首先想到的是直接做,然后TLE. public class Solution { public int wordsTyping(String[] sentence, int rows, int col ...
-
【和我一起学Python吧】Python3.0与2.X版本的区别
做为一个前端开发的码农,却正在阅读最新版的<A byte of Python>.发现Python3.0在某些地方还是有些改变的.准备慢慢的体会,与老版本的<A byte of Pyt ...
-
TCP/IP协议原理与应用笔记12:单播、多播和广播地址(目的地址)
根据数据接收者的接收范围,将目的地址分为单播.多播.广播. 这里目的地址的划分主要针对的是 物理地址 和 IP地址,没有涉及到端口地址,因为主要针对标识通信节点的地址(物理地址 和 IP地址)而言,和 ...
-
Ext布局篇
EXT标准布局类 收藏 面板相当于一张干净的白纸,如果直接在上面添加内容,将很难控制面板中内容的显示位置,面板元素越多就越显得凌乱,所以需要在面板上划分不同的区域,将面板内容展示到希望的位置上.E ...
-
Linux与堆栈概念
在学习C/C++编程的时候,老师都会反复灌输一些概念.比如程序内变量在堆栈上的分配,栈是由高地址到低地址,堆是由低地址到高地址等等,然后画出这样一幅经典概念图: 图片来自:http://blog.cs ...
-
Data Visualization – Banking Case Study Example (Part 1-6)
python信用评分卡(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_camp ...
-
『PyTorch』第二弹_张量
参考:http://www.jianshu.com/p/5ae644748f21# 几个数学概念: 标量(Scalar)是只有大小,没有方向的量,如1,2,3等 向量(Vector)是有大小和方向的量 ...
-
Linux kafka 单机安装
Kafka地址(选择最新地址1.1.1) http://archive.apache.org/dist/kafka/