首先要修改Ueditor的配置选项,根据自己的排版需求修改参数
ueditor.config.js
// 自动排版参数
autotypeset: {
mergeEmptyline: true, //合并空行
removeClass: true, //去掉冗余的class
removeEmptyline: true, //去掉空行
textAlign: 'left', //段落的排版方式,可以是 left,right,center,justify 去掉这个属性表示不执行排版
imageBlockLine: 'center', //图片的浮动方式,独占一行剧中,左右浮动,默认: center,left,right,none 去掉这个属性表示不执行排版
pasteFilter: true, //根据规则过滤没事粘贴进来的内容
clearFontSize: true, //去掉所有的内嵌字号,使用编辑器默认的字号
clearFontFamily: true, //去掉所有的内嵌字体,使用编辑器默认的字体
removeEmptyNode: true, // 去掉空节点
//可以去掉的标签
removeTagNames: { 标签名字: 1 },
indent: true, // 行首缩进
indentValue: '2em', //行首缩进的大小
bdc2sb: false,
tobdc: false,
},
在Ueditor的js文件里新增一个执行排版的操作
在ueditor.all.js文件里找到editor.addListener(‘afterpaste’, function () 或者类似e.addListener(‘afterpaste’, function () 一行,在函数内添加editor.execCommand(‘autotypeset’),这样在每次将复制内容粘贴到文本框内时,会自动执行自动排版。
ueditor.all.js
editor.addListener('afterpaste', function () {
editor.execCommand('autotypeset') // 新增这行代码
.....
当然,我们可以在页面上增加一个复选框,来控制自动排版的开关
<input type="checkbox" name="isAutotypeset" id="isAutotypeset" value="true" checked="checked">
<label for="isAutotypeset">自动排版</label>
相应的修改ueditor.all.js
editor.addListener('afterpaste', function () {
if (document.getElementById('isAutotypeset').checked) {
editor.execCommand('autotypeset')
}
.....
版权声明:本文为qqyule原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。