《百度ueditor在线编辑器几个需要优化的设置》要点:
本文介绍了百度ueditor在线编辑器几个需要优化的设置,希望对您有用。如果有疑问,可以联系我们。
百度ueditor在线编辑器刚下载时,有些初始化的设置可能并不是你想要的。
以下是一些常见的百度ueditor在线编辑器设置优化方法,希望能帮到你:
1、关闭远程抓图功能:
catchRemoteImageEnable : false //关闭,
经常出现抓到远程图后,但没及时更新编辑器中内容,提交到服务器后又再抓一次。
所以改成在服务端处理远程图片保存问题。
2、修改了 ueditor.all.min.js 中不能关闭自动保存的功能。
'contentchange': function () {
if(!me.getOpt('enableAutoSave')) return; //增加这行
if ( !saveKey ) {
return;
}
如果是用min.js版本,则在contentchange:function()下加:if(!b.getOpt('enableAutoSave')){return;}
3、失去焦点事件:统计字数并提醒:
UE.getEditor('content').addListener('blur',function(editor){savecontent();});
把它加载到UE创建方法后面连写,其中的Layer是一个DIV弹窗提示:
var ue = UE.getEditor('editor',{ .... }).addListener('blur',function(editor){alert('1');});
应用:
var ue = UE.getEditor('editor',{ ...配置项...}).addListener('blur',function(editor){
var con = this.getContent();
var conlen = con.length;
if(conlen > 6000) {
var outnum = conlen- 6000 ;
msg = '含代码在内总字数已超过 6000 字限制。多出 '+outnum+' 字,请减少字数!';
if(typeof layer=='object') layer.msg(msg);
else alert(msg);
}
});
4、修改了百度UEditor修改右下角统计字数默认只统计所见的文字个数:
为了便于展示实际保存的时候是保存的包含html标签的,所以右下角的统计字数功能需要修改
【方法1】
getContentLength: function (ingoneHtml,tagNames) {
var count = this.getContent(false,false,true).length;
/*if (ingoneHtml) {
tagNames = (tagNames || []).concat([ 'hr','img','iframe']);
count = this.getContentTxt().replace(/[\t\r\n]+/g,'').length;
for (var i = 0,ci; ci = tagNames[i++];) {
count += this.document.getElementsByTagName(ci).length;
}
}*/
return count;
},
找到ueditor.all.js这个文件 注释掉if (ingoneHtml).... 就ok了。如果使用的是min.js版,则注释掉
if(a){b=(b||[]).concat([hr,img,iframe]);for(var c=this.getContentTxt().replace(/[\t\r\n]+/g,).length,e=0,h;h=b[e++];)c+=this.document.getElementsByTagName(h).length}
【方法2】
不改上面的方法,破坏了原函数代码。其实第一个参数ingoneHtml在调用时传递false即可。
var count = editor.getContentLength(true); 改成 var count = editor.getContentLength(false);
min.js版则改:
d=b.getContentLength(!0)为d=b.getContentLength(!1)
这样就行了。
同时修改UE底部的错误提示,修改zh-cn.js(如需修改英文版本,也可改en.js)中‘wordOverFlowMsg’内容如下:
'wordOverFlowMsg':'<span style=color:red;>字数允许最大{#count}个字,已超过{#outer}个字,服务器可能拒绝保存!</span>',
编辑器中这段再改下:
var count = editor.getContentLength(true);
if (count > max) {
// countDom.innerHTML = errMsg; //这行改成下面:
//字数允许最大{#count}个字限制,已超过{#outer}个字,服务器可能拒绝保存!
countDom.innerHTML = errMsg.replace({#outer},count-max).replace({#count},count);
editor.fireEvent(wordcountoverflow);
} else {
countDom.innerHTML = msg.replace({#leave},max - count).replace({#count},count); //:'当前已输入{#count}个字符,您还可以输入{#leave}个字符。 ',
}
如果使用min.js版本,则在
d>e?(h.innerHTML=g,
改成:
d>e?(h.innerHTML = g.replace({#outer},d-e).replace({#count},d),/*h.innerHTML=g,*/
5、启用了retainOnlyLabelPasted属性,否则复制网页内容,会添加了一堆的span等属性。
//粘贴只保留标签,去除标签所有属性
,retainOnlyLabelPasted: true
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。