UEditor是百度研發(fā)的一個(gè)很好的文本編輯器,但是在使用過(guò)程中,默認(rèn)的是每次都會(huì)自動(dòng)追加p標(biāo)簽。但是在很多情況下,我并不需要這p標(biāo)簽,為此很鬧心。那有沒有什么辦法消除這自動(dòng)添加的p標(biāo)簽?zāi)兀?
方法如下:
首先:打開public/plugins/Ueditor/ueditor.all.js(或ueditor.all.min.js)。
1、搜索修改成false:
allowDivTransToP: false
2、再搜索并修改以下:
//編輯器不能為空內(nèi)容
if (domUtils.isEmptyNode(me.body)) {
me.body.innerHTML = '';
}
3、搜索“/給文本或者inline節(jié)點(diǎn)套p標(biāo)簽”,并且替換以下內(nèi)容
//給文本或者inline節(jié)點(diǎn)套p標(biāo)簽
if (me.options.enterTag == 'p') {
var child = this.body.firstChild, tmpNode;
if (!child || child.nodeType == 1 &&
(dtd.$cdata[child.tagName] || isCdataDiv(child) ||
domUtils.isCustomeNode(child)
)
&& child === this.body.lastChild) {
this.body.innerHTML = '' + this.body.innerHTML;
} else {
var p = me.document.createElement('div');
while (child) {
while (child && (child.nodeType == 3 || child.nodeType == 1 && dtd.p[child.tagName] && !dtd.$cdata[child.tagName])) {
tmpNode = child.nextSibling;
p.appendChild(child);
child = tmpNode;
}
if (p.firstChild) {
if (!child) {
me.body.appendChild(p);
break;
} else {
child.parentNode.insertBefore(p, child);
p = me.document.createElement('div');
}
}
child = child.nextSibling;
}
}
}
4、搜索 “進(jìn)入編輯器的li要套p標(biāo)簽”,這塊也要注釋掉
5、注視掉這段:
node.className = utils.trim(node.className.replace(/list-paddingleft-\w+/,'')) + ' list-paddingleft-' + type;
6、最后注視掉:
li.style.cssText && (li.style.cssText = '');
7、將文件名的ueditor.all.js改名ueditor.all.min.js 就可以不用替換的html模板文件里的信息。
8、清空ie緩存。
此次完美解決,以上是整個(gè)流程。