通过file按钮上传的图片如何显示出来 FileReader

参考个人博客:http://www.zhuzhuman.com/nav-1/type-1/article/19.html

当我们使用file类型的按钮上传图片的时候,有时候希望图片能显示在页面里,那么如何显示呢?
      使用file的onchange事件可以监听到上传按钮是否发生了上传。如果这时候获取它的value值,在部分浏览器上是可以获取到图片路径的。但是一些浏览器出于安全考虑,获取到的路径会全部变成"C:\fakepath\ + 文件名"的形式。而我们使用该路径去显示图片是无法显示的。
      H5中有FileReader,用于读取文件。我们可以在file按钮onchange的时候,去读取上传文件的信息。从而获取上传图片的dataURL格式的数据(通过data协议显示图片 data:image/图片格式;base64,…),
##FileReader使用方法##

1. 创建

new FileReader()
<script type="text/javascript">
	var fr = new FileReader();  
	// 可使用window.FileReader是否为真来判断当前浏览器是否支持FileReader。
	// if(window.FileReader) {
   
		// var fr = new FileReader();  
	// }
</script>

2. 事件

1. onabort       当读取操作被中止时调用
2. onerror       当读取操作发生错误时调用
3. onload        当读取操作成功完成时调用
4. onloadend     当读取操作完成时调用,不管是成功还是失败.该处理程序在onload或者onerror之后调用
5. onloadstart   当读取操作将要开始之前调用
6. onprogress    在读取数据过程中周期性调用

例:
	fr.onload = function(){
		this.result; 
		// 文件一旦开始读取,实例的 result 属性都会被填充。如果读取失败,则 result 的值为 null ,成功则result值为读取的结果。
	};

3. 状态常量

常量名     值      描述
——————————————————————————————————
EMPTY	  0	   还没有加载任何数据
LOADING	  1	   数据正在被加载
DONE	  2	   已完成全部的读取请求

###4. 属性###
1. error 在读取文件时发生的错误。只读。
2. readyState 表明FileReader对象的当前状态. 值为状态常量中的一个。只读。
3. result 读取到的文件内容。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值