关于百度ueditor编辑器,纯文本粘贴的filterTxtRules过滤规则
系统使用的是百度的ueditor编辑器,至于这个富文本编辑器咋样,咱就不多评论了。
遇到的需求是:
前端发布内容的时候,默认要开启纯文本模式,减少不必要的代码,节省带宽和空间。
遇到的问题是:
纯文本模式下,默认的filterTxtRules规则会过滤掉所有标签的属性,只保留文本。
而实际运行时,根据用户反馈,需要保留部分属性(如table的rowspan和colspan)。
解决过程溯源:
原来想着ueditor用的人还不少,搜索一下解决方案吧,官方也关站了,关于filterTxtRules规则的详细文档也找不到了。
没想到,百度、bing、google出来的都是复制粘贴的,就会说一句“$:{}”表示不保留任何属性。。。
我X,SB是不是,不会、不懂就不要TM乱发,去蹭这点破流量。
言归正传,记录下filterTxtRules规则,也算做点贡献吧。
filterTxtRules规则有:
使用指定函数过滤,这里涉及有点多,写不完。。
“-”,表示直接删除及其子节点内容
定义过滤属性,也就算上文说的'$':{}
这里主要说下第三个:
默认'$':{}是表示不保留任何属性,但是,注意有但是,{}里面表示需要保留的属性,空就是所有属性都不保留。
如果需要保留部分属性,如上文的需求,则:
$:{"rowspan":"", "colspan":""}
如果需要保留部分style:
$:{"rowspan":"", "colspan":"", "style":['font-size', 'color']}
总结:
希望网上发布信息的作者,不要瞎JB发了,做点有用的东西吧。
PS:请勿对号入座,只是表述一个普遍的现象,当然还是有发真正有用知识的作者了,比如,me(●ˇ∀ˇ●)
有 0 位网友评论: