龙空技术网

html5-FileReader实现上传图片实时预览

魔法小白呀哈哈 172

前言:

眼前你们对“filereaderjs”大约比较看重,同学们都想要剖析一些“filereaderjs”的相关知识。那么小编也在网络上收集了一些关于“filereaderjs””的相关文章,希望我们能喜欢,同学们快快来学习一下吧!

原文链接:

作者:吕小胖纸

普通的文件上传只能看到它的文件名,而如果要实现选择某一张图片则可以利用html5的FileReader完成

下面是实现步骤:

html:

这里是上传图片的内容,οnchange="getFile()"为选择文件后的转换函数,后面会提及

上传图片的按钮我这里是自定义的,做法在另一篇博客里

css:

预览框我暂定为100x100的正方形框,出来后图片可能会有变形之类的,可以自定义

接下来是主要的JS部分

JS:

首先,定义一个变量showFile保存实际要显示的图片的整个文件

获取预览框,方便之后的显示:

准备工作做完了,现在开始转码编写一个函数,将图片路径转码

这样就获取到了转码后的图片文件的src

(注意:FileReader在IE里是不兼容的,IE 6-9完全不兼容,IE 10-11需要写兼容)接下来就是转换啦

这里将选择的文件获取到之后,再赋给全局文件(如果点开了选择框但是没有选择文件即为之前的文件本身),回调函数里将src赋给预览框

这一步的完成时间是在file框的onchange中完成的然后效果就完成啦,看看成果吧

选择之前:

因为我没有给img赋src,所以为空白

选择之后:

选择图片就可以预览啦,再选择图片一样可以预览

样式简洁,可以自己定义,比如写个+什么的

像这种:

样式就自己定义好了。

对了,在这里说一下,我目前是在职web前端开发,如果你现在正在学习前端,了解前端,渴望成为一名合格的web前端开发工程师,在入门学习前端的过程当中有遇见任何关于学习方法,学习路线,学习效率等方面的问题,都可以随时关注并私信我:前端,我都会根据大家的问题给出针对性的建议,缺乏基础入门的视频教程也可以直接来找我,我这边有最新的web前端基础精讲视频教程, 还有我做web前端技术这段时间整理的一些学习手册,面试题,开发工具,PDF文档书籍教程,都可以直接分享给大家。

标签: #filereaderjs