百度编辑器去除一些无用标签方法

简介: 1、去掉每个li的中加的方法: 直接搜索 //进入编辑器的li要套p标签 注释以下代码: //进入编辑器的li要套p标签 me.addInputRule(function(root){ //utils.

1、去掉每个li的中加<p></p>的方法:

直接搜索 //进入编辑器的li要套p标签

注释以下代码:

//进入编辑器的li要套p标签
    me.addInputRule(function(root){
        //utils.each(root.getNodesByTagName('li'),function(li){
        //    var tmpP = UE.uNode.createElement('p');
        //    for(var i= 0,ci;ci=li.children[i];){
        //        if(ci.type == 'text' || dtd.p[ci.tagName]){
        //            tmpP.appendChild(ci);
        //        }else{
        //            if(tmpP.firstChild()){
        //                li.insertBefore(tmpP,ci);
        //                tmpP = UE.uNode.createElement('p');
        //                i = i + 2;
        //            }else{
        //                i++;
        //            }

        //        }
        //    }
        //    if(tmpP.firstChild() && !tmpP.parentNode || !li.firstChild()){
        //        li.appendChild(tmpP);
        //    }
        //    //trace:3357
        //    //p不能为空
        //    if (!tmpP.firstChild()) {
        //        tmpP.innerHTML(browser.ie ? '&nbsp;' : '<br/>')
        //    }
        //    //去掉末尾的空白
        //    var p = li.firstChild();
        //    var lastChild = p.lastChild();
        //    if(lastChild && lastChild.type == 'text' && /^\s*$/.test(lastChild.data)){
        //        p.removeChild(lastChild)
        //    }
        //});
        //if(me.options.autoTransWordToList){
        //    var orderlisttype = {
        //            'num1':/^\d+\)/,
        //            'decimal':/^\d+\./,
        //            'lower-alpha':/^[a-z]+\)/,
        //            'upper-alpha':/^[A-Z]+\./,
        //            'cn':/^[\u4E00\u4E8C\u4E09\u56DB\u516d\u4e94\u4e03\u516b\u4e5d]+[\u3001]/,
        //            'cn2':/^\([\u4E00\u4E8C\u4E09\u56DB\u516d\u4e94\u4e03\u516b\u4e5d]+\)/
        //        },
        //        unorderlisttype = {
        //            'square':'n'
        //        };
        //    function checkListType(content,container){
        //        var span = container.firstChild();
        //        if(span &&  span.type == 'element' && span.tagName == 'span' && /Wingdings|Symbol/.test(span.getStyle('font-family'))){
        //            for(var p in unorderlisttype){
        //                if(unorderlisttype[p] == span.data){
        //                    return p
        //                }
        //            }
        //            return 'disc'
        //        }
        //        for(var p in orderlisttype){
        //            if(orderlisttype[p].test(content)){
        //                return p;
        //            }
        //        }

        //    }
        //    utils.each(root.getNodesByTagName('p'),function(node){
        //        if(node.getAttr('class') != 'MsoListParagraph'){
        //            return
        //        }

        //        //word粘贴过来的会带有margin要去掉,但这样也可能会误命中一些央视
        //        node.setStyle('margin','');
        //        node.setStyle('margin-left','');
        //        node.setAttr('class','');

        //        function appendLi(list,p,type){
        //            if(list.tagName == 'ol'){
        //                if(browser.ie){
        //                    var first = p.firstChild();
        //                    if(first.type =='element' && first.tagName == 'span' && orderlisttype[type].test(first.innerText())){
        //                        p.removeChild(first);
        //                    }
        //                }else{
        //                    p.innerHTML(p.innerHTML().replace(orderlisttype[type],''));
        //                }
        //            }else{
        //                p.removeChild(p.firstChild())
        //            }

        //            var li = UE.uNode.createElement('li');
        //            li.appendChild(p);
        //            list.appendChild(li);
        //        }
        //        var tmp = node,type,cacheNode = node;

        //        if(node.parentNode.tagName != 'li' && (type = checkListType(node.innerText(),node))){

        //            var list = UE.uNode.createElement(me.options.insertorderedlist.hasOwnProperty(type) ? 'ol' : 'ul');
        //            if(customStyle[type]){
        //                list.setAttr('class','custom_'+type)
        //            }else{
        //                list.setStyle('list-style-type',type)
        //            }
        //            while(node && node.parentNode.tagName != 'li' && checkListType(node.innerText(),node)){
        //                tmp = node.nextSibling();
        //                if(!tmp){
        //                    node.parentNode.insertBefore(list,node)
        //                }
        //                appendLi(list,node,type);
        //                node = tmp;
        //            }
        //            if(!list.parentNode && node && node.parentNode){
        //                node.parentNode.insertBefore(list,node)
        //            }
        //        }
        //        var span = cacheNode.firstChild();
        //        if(span && span.type == 'element' && span.tagName == 'span' && /^\s*(&nbsp;)+\s*$/.test(span.innerText())){
        //            span.parentNode.removeChild(span)
        //        }
        //    })
        //}

    });

2、去掉内容编辑自动套P标签:

搜索修改成false:allowDivTransToP: false
再搜索并修改以下:
//编辑器不能为空内容

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

 

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

 

 

学习交流群:364976091
相关文章
|
6月前
|
JavaScript 数据安全/隐私保护 开发者
开源图片编辑器推荐-可用于海报编辑、商品设计、封面设计、标签设计等场景
推荐开源图片编辑器,基于fabric.js和Vue开发,适合海报、Logo等设计场景。拥有4.4K GitHub Stars,特性包括自定义字体、素材、模板,支持插件扩展、右键菜单及快捷键。提供图片滤镜、裁剪、拖拽、PSD导入、水印设置和分类素材管理。适用于非专业设计者,易于二次开发。
开源图片编辑器推荐-可用于海报编辑、商品设计、封面设计、标签设计等场景
|
API Docker 容器
标签管理利器——使用标签编辑器,多地域多产品千台资源一次搞定
创建阿里云资源时,您可以给资源绑定标签。已经创建的资源,也可以在资源列表页面或者通过API,批量的添加、更改和删除标签。当遇到如下更为复杂问题和场景,该如何快速解决标签问题呢? 资源跨度大,需要跨资源类型、跨地域,将关联的资源打上标签。
3372 0
标签管理利器——使用标签编辑器,多地域多产品千台资源一次搞定
|
7月前
|
存储 Linux 编译器
vim编辑器和gcc/g++编辑器的使用讲解
vim编辑器和gcc/g++编辑器的使用讲解
159 2
|
7月前
|
Linux 编译器 开发工具
Linux:详解(yum的使用、vim编辑器命令集合以及gcc/g++编译器的使用)
Linux:详解(yum的使用、vim编辑器命令集合以及gcc/g++编译器的使用)
197 1
|
7月前
|
Linux Shell 开发工具
【linux】Linux编辑器-vim
【linux】Linux编辑器-vim
108 0
|
5月前
|
开发工具
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
vi编辑器,现在vi\vim是文本文件进行编辑的最佳选择,Vim是vi的加强的版本,兼容vi的所有指令,vim编辑器有三种工作模式,一开始进入的是命令模式,命令模式i是插入的意思,两下y+p复制内容
|
6月前
|
开发工具
Vim 编辑器:高效文本编辑的瑞士军刀
**Vim 概览:** Vim 是一个功能丰富的文本编辑器,以其高度可定制性著称。文章介绍了 Vim 的高效使用技巧,包括快捷打开文件、命令行模式下的常用命令、查找与替换、删除和复制文本。还讨论了配置 `.vimrc` 文件以自定义设置,如改变 leader 键、设置缩进和高亮,并展示了安装插件如 vim-airline 和 vim-snazzy 的方法。通过这些技巧,用户能提升 Vim 使用效率。
73 5
|
6月前
|
Ubuntu 搜索推荐 Linux
Linux的Vim编辑器详解
Linux的Vim编辑器详解
|
5月前
|
Linux 开发工具 数据安全/隐私保护
【linux】如何优雅的使用vim编辑器
【linux】如何优雅的使用vim编辑器
|
6月前
|
缓存 人工智能 Linux
【Linux】--- 详解Linux软件包管理器yum和编辑器vim
【Linux】--- 详解Linux软件包管理器yum和编辑器vim
97 0