您好,欢迎来到咤帕游戏。
搜索
您的当前位置:首页JS中FileReader实现图片上传预览

JS中FileReader实现图片上传预览

来源:咤帕游戏


这次给大家带来JS中FileReader实现图片上传预览,JS中FileReader实现图片上传预览的注意事项有哪些,下面就是实战案例,一起来看一下。

JavaScript使用FileReader实现图片上传预览效果也是很多人比较迷茫的,大多数人不知道怎么使用FileReader实现图片上传预览效果,下面文章就给大家详细带来具体操作方法和代码,一起来看看。

FileReader是HTML5 File API的一部分。它实现了一种异步文件读取机制。可以把FileReader想象为XMLHttpRequest,区别只是它读取的是文件系统,而不是远程服务器。为了读取文件中的数据,FileReader提供了如下几个方法。

  • readAsText(file,encoding):以纯文本的方式读取文件,将读取到的文件保存到result属性中。

  • readAsDataURL(file):读取文件并将文件以数据URI的形式保存在result属性中。
  • readAsBinaryString(file):读取文件并将一个字符串保存在result属性中,字符串中的每个字符表示一个字节。
  • readAsArrayBuffer(file):读取文件并将一个包含文件内容的ArrayBuffer保存在result属性中。
  • multiple 属性表示支持多张图片
  • <p id="wrapper"> 
     <input id="fileUpload" type="file" multiple /><br />
     <p id="image-holder"> </p>
    </p>
    $("#fileUpload").on('change', function () {
     
     //获取上传文件的数量
     var countFiles = $(this)[0].files.length;
     
     var imgPath = $(this)[0].value;
     var extn = imgPath.substring(imgPath.lastIndexOf('.') + 1).toLowerCase();
     var image_holder = $("#image-holder");
     image_holder.empty();
     if (extn == "gif" || extn == "png" || extn == "jpg" || extn == "jpeg") {
     if (typeof (FileReader) != "undefined") { 
     // 循环所有要上传的图片
     for (var i = 0; i < countFiles; i++) {
     
     var reader = new FileReader();
     reader.onload = function (e) {
     $("<img />", {
     "src": e.target.result,
     "class": "thumb-image"
     }).appendTo(image_holder);
     }
     image_holder.show();
     reader.readAsDataURL($(this)[0].files[i]);
     }
     } else {
     alert("你的浏览器不支持FileReader!");
     }
     } else {
     alert("请选择图像文件。");
     }
    });

    FileReader 可以支持 Internet Explorer 10+、FireFox,、Chrome 和Opera浏览器。

    相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

    推荐阅读:

    node.js如何实现装饰者模式

    Django多数据库使用步奏详解

    Copyright © 2019- zapatazone.com 版权所有

    违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

    本站由北京市万商天勤律师事务所王兴未律师提供法律服务