首页
归档
笔记
树洞
搜索
友言

文章详情

Interesting People Record Interesting.

/ JavaScript / 文章详情

百度UEditor编辑器如何去除自动默认添加的p标签

Sonder
2020-04-06
1887字
5分钟
浏览 (3.6k)

UEditor是百度出品的一个很好的文本编辑器,但是在使用过程中,默认的是每次都会自动追加p标签。但是在很多情况下,我并不需要这p标签,为此很闹心。那有没有什么办法消除这自动添加的p标签呢?

方法如下:

首先:打开ueditor.all.js(或ueditor.all.min.js)。

1、搜索修改成false:allowDivTransToP: false

2、再搜索并修改以下:

复制代码
//编辑器不能为空内容

if (domUtils.isEmptyNode(me.body)) {
   me.body.innerHTML = '<div>' + (browser.ie ? '' : '<br/>') + '</div>';
}

3、搜索“/给文本或者inline节点套p标签”,并且替换以下内容

复制代码
//给文本或者inline节点套p标签

     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 = '<div>' + (browser.ie ? ' ' : '<br/>') + '</div>' + 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、搜索 进入编辑器的li要套p标签,这块也要注释掉

5、注释掉这段

复制代码
node.className = utils.trim(node.className.replace(/list-paddingleft-\w+/,'')) + ' list-paddingleft-' + type;

6、最后注释掉:

复制代码
li.style.cssText && (li.style.cssText = '');

完美解决,以上是整个流程。

下一篇 / 网页外链用了 target="_blank",结果悲剧了

🎯 相关文章

💡 推荐文章

🕵️‍♂️ 评论 (0)