如图:有2种自定义方法,一种是改源码,一种是初始化

初始化,如下代码:

var ue = UE.getEditor('XXXid',{
//
contextMenu:[
{label:'', cmdName:'selectall'},
{
label:'',
cmdName:'cleardoc',
exec:function () {
this.execCommand( 'cleardoc' );
}
},
{label:'这里添加一个菜单',cmdName:'cleardoc',
icon:'aligntd',
exec:function () {
//this.execCommand( 'cleardoc' );
console.log("添加一个菜单");
}
},
'-',
{
cmdName:'unlink'
},
'-',
{
group:'',
icon:'justifyjustify',
subMenu:[
{
label:'',
cmdName:'justify',
value:'left'
},
{
label:'',
cmdName:'justify',
value:'right'
},
{
label:'',
cmdName:'justify',
value:'center'
},
{
label:'',
cmdName:'justify',
value:'justify'
}
]
},
'-',
{
group:'',
icon:'table',
subMenu:[
{
label:'',
cmdName:'inserttable'
},
{
label:'',
cmdName:'deletetable'
},
'-',
{
label:'',
cmdName:'deleterow'
},
{
label:'',
cmdName:'deletecol'
},
{
label:'',
cmdName:'insertcol'
},
{
label:'',
cmdName:'insertcolnext'
},
{
label:'',
cmdName:'insertrow'
},
{
label:'',
cmdName:'insertrownext'
},
'-',
{
label:'',
cmdName:'insertcaption'
},
{
label:'',
cmdName:'deletecaption'
},
{
label:'',
cmdName:'inserttitle'
},
{
label:'',
cmdName:'deletetitle'
},
{
label:'',
cmdName:'inserttitlecol'
},
{
label:'',
cmdName:'deletetitlecol'
},
'-',
{
cmdName:'mergecells'
},
{
cmdName:'mergeright'
},
{
cmdName:'mergedown'
},
'-',
{
cmdName:'splittorows'
},
{
cmdName:'splittocols'
},
{
cmdName:'splittocells'
},
'-',
{
cmdName:'averagedistributerow'
},
{
cmdName:'averagedistributecol'
},
'-',
{
cmdName:'edittd',
exec:function () {
if ( UE.ui['edittd'] ) {
new UE.ui['edittd']( this );
}
this.getDialog('edittd').open();
}
},
{
cmdName:'edittable',
exec:function () {
if ( UE.ui['edittable'] ) {
new UE.ui['edittable']( this );
}
this.getDialog('edittable').open();
}
},
{
cmdName:'setbordervisible'
}
]
},
{
group:'',
icon:'tablesort',
subMenu:[
{
cmdName:'enablesort'
},
{
cmdName:'disablesort'
},
'-',
{
cmdName:'sorttable',
value:'reversecurrent'
},
{
cmdName:'sorttable',
value:'orderbyasc'
},
{
cmdName:'sorttable',
value:'reversebyasc'
},
{
cmdName:'sorttable',
value:'orderbynum'
},
{
cmdName:'sorttable',
value:'reversebynum'
}
]
},
{
group:'',
icon:'borderBack',
subMenu:[
{
cmdName:"interlacetable",
exec:function(){
this.execCommand("interlacetable");
}
},
{
cmdName:"uninterlacetable",
exec:function(){
this.execCommand("uninterlacetable");
}
},
{
cmdName:"settablebackground",
exec:function(){
this.execCommand("settablebackground",{repeat:true,colorList:["#bbb","#ccc"]});
}
},
{
cmdName:"cleartablebackground",
exec:function(){
this.execCommand("cleartablebackground");
}
},
{
cmdName:"settablebackground",
exec:function(){
this.execCommand("settablebackground",{repeat:true,colorList:["red","blue"]});
}
},
{
cmdName:"settablebackground",
exec:function(){
this.execCommand("settablebackground",{repeat:true,colorList:["#aaa","#bbb","#ccc"]});
}
}
]
},
{
group:'',
icon:'aligntd',
subMenu:[
{
cmdName:'cellalignment',
value:{align:'left',vAlign:'top'}
},
{
cmdName:'cellalignment',
value:{align:'center',vAlign:'top'}
},
{
cmdName:'cellalignment',
value:{align:'right',vAlign:'top'}
},
{
cmdName:'cellalignment',
value:{align:'left',vAlign:'middle'}
},
{
cmdName:'cellalignment',
value:{align:'center',vAlign:'middle'}
},
{
cmdName:'cellalignment',
value:{align:'right',vAlign:'middle'}
},
{
cmdName:'cellalignment',
value:{align:'left',vAlign:'bottom'}
},
{
cmdName:'cellalignment',
value:{align:'center',vAlign:'bottom'}
},
{
cmdName:'cellalignment',
value:{align:'right',vAlign:'bottom'}
}
]
},
{
group:'',
icon:'aligntable',
subMenu:[
{
cmdName:'tablealignment',
className: 'left',
label:'',
value:"left"
},
{
cmdName:'tablealignment',
className: 'center',
label:'',
value:"center"
},
{
cmdName:'tablealignment',
className: 'right',
label:'',
value:"right"
}
]
},
'-',
{
label:'前插入段落',
cmdName:'insertparagraph',
value:true
},
{
label:'后插入段落',
cmdName:'insertparagraph'
},
{
cmdName:'copy'
},
{
cmdName:'paste'
}
]
//
});

以上在初始化时调用,即可覆盖源功能

下面看改源码在哪里:

一、ueditor.config.js 找到:

取消菜单在这    //,enableContextMenu:
*确定是注释掉的,开启就没有菜单了 下面解开:,contextMenu:........... 里面格式参考以下二部分。 二、具体源码在这里:ueditor.all.js找到 UE.plugins['contextmenu'] = function () { 格式参考如下:
{label:lang['selectall'], cmdName:'selectall'},
{
label:lang.cleardoc,
cmdName:'cleardoc',
exec:function () {
if ( confirm( lang.confirmclear ) ) {
this.execCommand( 'cleardoc' );
}
}
},
'-',
{
label:lang.unlink,
cmdName:'unlink'
},

对于二级菜单标签label改不了,可以找到下面代码处,加一个case项:

case "macro":
return "宏";



ueditor 百度编辑器,自定义右键菜单的更多相关文章

  1. ueditor 百度编辑器 自定义图片上传路径和格式化上传文件名

    今天项目中需要自定义图片上传的保存路径,并且不需要按照日期自动创建存储文件夹和文件名,我的ueditor版本是1.3.6.下面记录一下我配置成功的方法,如果有什么不对的地方欢迎指出,共同学习: 1:我 ...

  2. ASP.NET Aries 入门开发教程8:树型列表及自定义右键菜单

    前言: 前面几篇重点都在讲普通列表的相关操作. 本篇主要讲树型列表的操作. 框架在设计时,已经把树型列表和普通列表全面统一了操作,用法几乎是一致的. 下面介绍一些差距化的内容: 1:树型列表绑定: v ...

  3. JavaScript自定义右键菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. 自定义右键菜单,禁用浏览器自带的右键菜单[右键菜单实现--Demo]

    许多从事Web开发的会发现有些事,我们需要禁用浏览器本事自带的右键菜单,而实现自定义的右键菜单下面我们也来实现一个自定义的右键菜单 首先来创建JSP页面 <%@ page language=&q ...

  5. JS简单实现自定义右键菜单

    RT,一个简单的例子,仅仅讲述原理 <div id="menu" style="width: 0;height: 0;background: cadetblue;p ...

  6. antd Tree组件中,自定义右键菜单

    最近项目中,有一个需求是自定义antd的Tree组件的右键菜单功能. 直接上代码 class Demo extends Component { state = { rightClickNodeTree ...

  7. 织梦替换ueditor百度编辑器,支持图片水印 教程

    1下载ueditor百度编辑器 2 把下载的zip解压得到ueditor文件夹,把解压到的ueditor文件夹扔进你网站的include文件夹去 3 打开 /include/inc/inc_fun_f ...

  8. AS3.0 自定义右键菜单类

    AS3.0 自定义右键菜单类: /** * 自定义右键菜单类 * 自定义菜单项不得超过15个,每个标题必须至少包含一个可见字符. * 标题字符不能超过100个,并且开头的空白字符会被忽略. * 与任何 ...

  9. js之自定义右键菜单

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. [ActionScript 3.0] 自定义右键菜单

    将自定义右键菜单的一些属性和方法归纳到AddRightMenu.as,通过实例化此类,调用相关方法即可测试! package { import flash.display.Sprite; import ...

随机推荐

  1. Jquery :animate反复执行的动画可以利用函数的回调

    <html><head><script type="text/javascript" src="/jquery/jquery.js" ...

  2. NodeJS 学习记录

    这里是我学习NodeJs的学习记录 URL:网址解析的好帮手 URL,URI 首先,URI是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源.而URL是u ...

  3. GUI and Usability Test Scenarios

    1 all fields on page (e.g. text box ,radio options, dropdown lists) should be aligned properly2 Nume ...

  4. maven编译的时候跳过test

    方式1:用命令带上参数 mvn install -Dmaven.test.skip=true 方式2:在pom.xml里面配置 <plugin> <groupId>org.ap ...

  5. BZOJ2631tree——LCT

    题目描述 一棵n个点的树,每个点的初始权值为1.对于这棵树有q个操作,每个操作为以下四种操作之一:+ u v c:将u到v的路径上的点的权值都加上自然数c:- u1 v1 u2 v2:将树中原有的边( ...

  6. Js 百分比进度条

    [构想] CSS3 + JS CSS3控制进度 利用CSS3中的 @keyframes JS实现百分比 根据CSS来调整,时间 [页面代码] 第一种: 默认直接进入就是下载 CSS代码 body { ...

  7. Codeforces Round #419 (Div. 2) C. Karen and Game

    C. Karen and Game time limit per test 2 seconds memory limit per test 512 megabytes input standard i ...

  8. javascript history.go(-1) 返回刷新不起作用

    js返回刷新两种方式: 方式一:有提示框 <input type="button"  onClick="javascript:history.go(-1);loca ...

  9. c# 对象存cookie

    下载并引用Newtonsoft.Json.dll 对象转json,然后存cookies string xxx= Newtonsoft.Json.JsonConvert.SerializeObject( ...

  10. Android自动化测试探索

    Android自动化测试探索 前言 通常来说,我们开发完成产品之后,都是由测试组或者是我们自己点一点,基本上没有问题了就开始上线.但是,随着时间的堆叠,一款产品的功能也越来越多.这时,我们为了保证产品 ...