javascript HTML5文件上传FileReader API_javascript技巧
程序员文章站
2022-03-11 22:19:24
...
文件上传功能现在是越来越普遍,所有的社交网站,媒体网站,比如优酷视频,微博等,都提供了上传图片,上传视频等功能。但过去WEB程序员都很清楚,用HTML表单上传文件是很麻烦的事情,特别是你想了解一下用户上传的文件的一些属性,必须等它上传完成后才能知道。
未知的东西上传到服务器上,有可能产生安全问题,也有可能体积太大,超过允许,浪费空间。现在好了,WEB技术在进步,HTML5带来了很多好东西。这个FileReader API就能让你在用户上传之前就能获取上传文件的一些基本属性。
HTML代码
这个FileReader API 的工作原理和 File API 一样,需要使用input[type="file"] 元素:
在File API这篇文章里有详细的关于能读取到的文件的相关信息,比如地址,体积,尺寸大小,文件类型等等。
JavaScript
这个例子中我们用input表单域上传一张图片,当用户在自己的电脑里选中一张图片后,这个图片会被显示到页面上:
document.getElementById('upload-file').addEventListener('change', function() { var file; var destination = document.getElementById('destination'); destination.innerHTML = ''; // 循环用户多选的文件 for(var x = 0, xlen = this.files.length; x
这个例子里,我们使用FileReader里的readAsDataURL方法将图片内容转换成base64编码的字符串,然后使用图片的data URI方式显示它。其它的FileReader读取方法还有readAsText, readAsArrayBuffer和readAsBinaryString等
有了这个FileReader API,我们就可以避免用户先将文件上传到服务器,在浏览器客户端我们就可以进行操作。这些在上传到服务器前的预处理是很有必要的。
以上就是本文的全部内容,希望对大家的学习有所帮助。
上一篇: java单例模式的实现方式
下一篇: H5 仿阿里自适应页面
推荐阅读
-
JavaScript检测上传文件大小的方法_javascript技巧
-
HTML5 文件域+FileReader 分段读取文件并上传
-
PHP中使用Session配合Javascript实现文件上传进度条功能_php技巧
-
js获取上传文件大小示例代码_javascript技巧
-
js获取判断上传文件后缀名的示例代码_javascript技巧
-
一些常用弹出窗口/拖放/异步文件上传等实用代码_javascript技巧
-
javascript - ajax结合html5中的file实现文件上传,后台用PHP接收,该如何用PHP接收传过来的formData?
-
上传文件返回的json数据会被提示下载问题解决方案_javascript技巧
-
多个表单中如何获得这个文件上传的网址实现js代码_javascript技巧
-
JavaScript检测上传文件大小的方法_javascript技巧