JS+HTML5 FileReader对象用法示例


Posted in Javascript onApril 07, 2017

本文实例讲述了JS+HTML5 FileReader对象用法。分享给大家供大家参考,具体如下:

FileReader 实例中有四个方法来读取文件数据

1、readAsBinaryString(Blob|File)
2、readAsDataURL(Blob|File)
3、readAsText(Blob|File)
4、readAsArrayBuffer(Blob|File)

FileReader 实例包含很多事件(onerror, onprogress, onload[result]

<input name="file" id="uploadFile" />
var file = document.getElementById("uploadFile");
var bufferSize = 1024;
var pos = 0;
var onload = function(e) {
   console.log("Read", e.target.result);
   var img = document.createElement("img");
   img.src = e.target.result;
   img.width = 300;
   img.height = 300;
   document.body.appendChild(img);
};
var onerror = function() {}
var onprogress = function(e) {}
file.onchange = function() {
   if (file.files) file = file.files[0];
   while (pos < file.size) {
    var reader = new FileReader();
    reader.onload = onload;
    reader.onerror = onerror;
    /*reader.readAsText(file.slice(pos, bufferSize));
    pos += bufferSize; */
    reader.readAsDataURL(file);
    pos = file.size + 1;
   }
}

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
基于jquery的一个OutlookBar类,动态创建导航条
Nov 19 Javascript
checkbox使用示例
Aug 23 Javascript
使用jquery.qrcode生成彩色二维码实例
Aug 08 Javascript
Javascript实现飞动广告效果的方法
May 25 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
Feb 12 Javascript
原生JS实现图片懒加载(lazyload)实例
Jun 13 Javascript
如何理解Vue的作用域插槽的实现原理
Aug 19 Javascript
javascript按顺序加载运行js方法
Dec 01 Javascript
vue点击自增和求和的实例代码
Nov 06 Javascript
jQuery--遍历操作实例小结【后代、同胞及过滤】
May 22 jQuery
vue+element实现图片上传及裁剪功能
Jun 29 Javascript
vue cli4.0项目引入typescript的方法
Jul 17 Javascript
微信小程序实现图片轮播及文件上传
Apr 07 #Javascript
自带气泡提示的vue校验插件(vue-verify-pop)
Apr 07 #Javascript
JS仿Base.js实现的继承示例
Apr 07 #Javascript
vue-hook-form使用详解
Apr 07 #Javascript
ES6实现的遍历目录函数示例
Apr 07 #Javascript
如何使用vuejs实现更好的Form validation?
Apr 07 #Javascript
JS实现css hover操作的方法示例
Apr 07 #Javascript
You might like
php中static静态变量的使用方法详解
2010/06/04 PHP
PHP中使用gettext来支持多语言的方法
2011/05/02 PHP
ThinkPHP之A方法实例讲解
2014/06/20 PHP
PHP执行Curl时报错提示CURL ERROR: Recv failure: Connection reset by peer的解决方法
2014/06/26 PHP
php一维二维数组键排序方法实例总结
2014/11/13 PHP
PHP使用DOM和simplexml读取xml文档的方法示例
2017/02/08 PHP
收集的网上用的ajax之chat.js文件
2007/04/08 Javascript
JavaScript实现简单的双色球(实例讲解)
2017/07/31 Javascript
Web开发使用Angular实现用户密码强度判别的方法
2017/09/27 Javascript
动态Axios的配置步骤详解
2018/01/12 Javascript
解决vue打包之后静态资源图片失效的问题
2018/02/21 Javascript
vue-cli整合vuex的时候,修改actions和mutations,实现热部署的方法
2018/09/19 Javascript
[01:55]2014DOTA2国际邀请赛快报:国土生病 紧急去医院治疗
2014/07/10 DOTA
详解Python中break语句的用法
2015/05/14 Python
Python二叉搜索树与双向链表转换实现方法
2016/04/29 Python
Python使用自带的ConfigParser模块读写ini配置文件
2016/06/26 Python
Python中模块与包有相同名字的处理方法
2017/05/05 Python
Python字典创建 遍历 添加等实用基础操作技巧
2018/09/13 Python
wxPython多个窗口的基本结构
2019/11/19 Python
简单总结CSS3中视窗单位Viewport的常见用法
2016/02/04 HTML / CSS
html5构建触屏网站之网站尺寸探讨
2013/01/07 HTML / CSS
图片上传插件ImgUploadJS:用HTML5 File API 实现截图粘贴上传、拖拽上传
2016/01/20 HTML / CSS
全球知名的婚恋交友网站:Match.com
2017/01/05 全球购物
智能钱包:Ekster
2019/11/21 全球购物
Stio官网:男女、儿童户外服装
2019/12/13 全球购物
高校毕业生自我鉴定
2013/10/27 职场文书
小学生元旦广播稿
2014/02/21 职场文书
《匆匆》教学反思
2014/02/22 职场文书
儿园租房协议书范本
2014/12/02 职场文书
大学学生会辞职信
2015/05/13 职场文书
2015中学学校工作总结
2015/07/20 职场文书
社区结对共建协议书
2016/03/23 职场文书
2016年感恩教师节活动总结
2016/04/01 职场文书
IDEA 2022 Translation 未知错误 翻译文档失败
2022/04/24 Java/Android
讲解MySQL增删改操作
2022/05/06 MySQL
python内置模块之上下文管理contextlib
2022/06/14 Python