文档章节

百度编辑器UEditor源码模式下过滤div/style等html标签

m
 makingdifference
发布于 2016/11/15 14:37
字数 484
阅读 4552
收藏 1

UEditor在html代码模式下,当输入带有<div style="">、<iframe>这类带有html标签的内容时,切换为编辑器模式后,会发现输入的内容被删除,自动过滤掉了。提供两种解决方案:

1、“白名单法“,此即网上找的很多配置黑白名单,不过都适用于老版本;新版本的文件名做了很大改变,找不到那些方法中描述的原样文件。但是,一套程序的原理总是不变的,通过几天的研究、试了多种方法,发现,最新的版本(1.4.3)也有个所谓“白名单”,通过配置即可实现对默认的过滤规则做修改。

在配置文件 ueditor.config.js中,大约354行,有个注释://默认过滤规则相关配置项 ,这里几行是基础的开关。下面有个 xss过滤、insertHTML等操作相关的配置项,这里就是操作重点,"xss过滤白名单"即UEditor中源码模式下,不被过滤的标签。

例如:我们修改 allowDivTransToP为false,在 whitList{}白名单中加入 div标签,则清除浏览器缓存后,在源码模式下编辑div标签,增加样式,切换到编辑器模式,就会生效;返回源码模式,div标签依然存在。

同理,插入视频时,使<embed><iframe>标签不被过滤掉,可在 ,whitList{}中分别增加相应标签及属性:

 

2、“简单粗暴法”:在文件ueditor.all.js中,有个函数 UE.plugins['defaultfilter'] = function(){......},上面注释为,编辑器默认的过滤转换机制。可在函数开头直接添加 return 语句,使所有过滤机制都不生效。

同理,对ueditor.all.min.js做同样处理:(可搜索 defaultfilter 定位)

这样,UEditor自带的所有过滤机制都无效,可在源码模式下随意使用html标签。

 

 

 

© 著作权归作者所有

m
粉丝 2
博文 54
码字总数 18586
作品 0
洛阳
技术主管
私信 提问
加载中

评论(1)

蟒蛇
蟒蛇
没有用
UEditor 1.1.8 发布,百度开源富文本编辑器

UEditor是由百度 Web前端研发部开发的所见即所得的富文本在线编辑器,具有轻量,可定制,注重用户体验等特点,开源基于BSD协议,允许互联网开发者自由传播和使用代 码。百度UEditor的推出,可...

红薯
2012/01/10
3K
10
百度Ueditor编辑器的Html模式自动替换样式的解决方法

百度的Ueditor编辑器出于安全性考虑,用户在html模式下粘贴进去的html文档会自动被去除样式和转义。虽然安全的,但是非常不方便。 做一下修改把这个功能去掉。 一、打开ueditor.all.js 二、大...

辰月
2015/08/16
1K
0
百度编辑器UEditor不能插入视频的解决方法

xssFilter导致插入视频异常,编辑器在切换源码的过程中过滤掉img的url属性(用来存储视频url)src/plugins/video.js里处理的是url,而不是src。<基本出处参见:https://github.com/fex-team...

makingdifference
2016/11/15
12.2K
3
ueditor样式过滤去除和远程图片上传自定义

ueditor自定义编辑的时候,比如需要做延迟加载,这个时候需要自定义图片等,但是,ueditor会去除img上面的属性,比如data-original和把远程图片自动上传。 这个时候,首先,需要给图片自动上...

zhoulujun
2018/03/16
0
0
dede文章增加HTML自定义字段字符被过滤问题

在dedecms后台频道模型增加自定义字段,一般HTML文字编辑器能解决用户编辑问题,当然还包括纯单行或多行文本编辑。但发现dedecms会自动过滤掉某些敏感的字符,比如style样式,百度地图js调用...

跟版网
2016/03/02
589
0

没有更多内容

加载失败,请刷新页面

加载更多

5.设计模式之四:抽象工厂模式【创建型模式】

前面介绍的工厂方法模式中考虑的是一类产品的生产,如畜牧场只养动物、电视机厂只生产电视机、计算机软件学院只培养计算机软件专业的学生等。 同种类称为同等级,也就是说:工厂方法模式只考...

Eappo_Geng
4分钟前
1
0
一个基于springSecurity的Json Web Token的实现

SecurityJwt 一个基于springSecurity的Json Web Token的实现 GitHub地址 提要 一、SpringSecurity Spring Security,一种基于 Spring AOP 和 Servlet 过滤器的安全框架。它提供全面的安全性解...

左羽
19分钟前
3
0
七牛云批量下载图片到本地

使用七牛云提供的下载工具批量下载 下载:https://pan.baidu.com/s/1kVcdFDH xp1p下载解压后,qiniu文件里有qshell.conf 和 qshell.exe两个文件,编辑qshell.conf`{"dest_dir": "F://qi......

闊苡訆涐囍醣
23分钟前
2
0
米联客(MSXBO) 基于VIVADO实现FPGA时序笔记之概述(一)

FPGA时序要满足要求,这个基本原理大家基本都知道,但是如何使用VIVADO IDE工具进行时序设计、时序分析、判断时序是否满足要求,这个对很多FPGA工程师来说,还是比较抽象,因为时序分析的工具...

msxbo
36分钟前
6
0
Centos7 命令行下kvm安装windows,linux

查看是否支持 egrep "svm|vmx" /proc/cpuinfo |uniq 安装软件 yum install libvirt -yyum -y install qemu-kvmsystemctl enable libvirtd && systemctl start libvirtd# 启动lib......

以谁为师
37分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部