关于百度ueditor编辑器,纯文本粘贴的filterTxtRules过滤规则

阅读471评论0

系统使用的是百度的ueditor编辑器,至于这个富文本编辑器咋样,咱就不多评论了。

遇到的需求是:

前端发布内容的时候,默认要开启纯文本模式,减少不必要的代码,节省带宽和空间。

遇到的问题是:

纯文本模式下,默认的filterTxtRules规则会过滤掉所有标签的属性,只保留文本。

而实际运行时,根据用户反馈,需要保留部分属性(如table的rowspan和colspan)。

解决过程溯源:

原来想着ueditor用的人还不少,搜索一下解决方案吧,官方也关站了,关于filterTxtRules规则的详细文档也找不到了。

没想到,百度、bing、google出来的都是复制粘贴的,就会说一句“$:{}”表示不保留任何属性。。。

我X,SB是不是,不会、不懂就不要TM乱发,去蹭这点破流量。

言归正传,记录下filterTxtRules规则,也算做点贡献吧。

filterTxtRules规则有:

  1. 使用指定函数过滤,这里涉及有点多,写不完。。

  2. “-”,表示直接删除及其子节点内容

  3. 定义过滤属性,也就算上文说的'$':{}

这里主要说下第三个:

默认'$':{}是表示不保留任何属性,但是,注意有但是,{}里面表示需要保留的属性,空就是所有属性都不保留。

如果需要保留部分属性,如上文的需求,则:

$:{"rowspan":"", "colspan":""}

如果需要保留部分style:

$:{"rowspan":"", "colspan":"", "style":['font-size', 'color']}

总结:

希望网上发布信息的作者,不要瞎JB发了,做点有用的东西吧。

PS:请勿对号入座,只是表述一个普遍的现象,当然还是有发真正有用知识的作者了,比如,me(●ˇ∀ˇ●)

0 位网友评论:

欢迎来评论

请填写验证码