HTML5新增文件操作

files对象

这个对象是上传的文件对象集合;
里面包含了每个上传文件的信息和上传文件的length;
需要给input元素添加change事件监听;

var inputFile=document.getElementById('file');
inputFile.onchange=function(){
 console.log(this.files);
}

在这里插入图片描述

FileReader对象

可以读取本地文件内容;

var reader = new FileReader();
它是一个构造函数,可以实例化一个对象;

FileReader的MDN手册
常用的方法

readAsText()

开始读取指定的Blob或者File 对象中的内容。一旦完成,result属性中将包含一个字符串以表示所读取的文件内容。
代码示例:

window.onload=function(){
 var div = document.querySelector('div');
 var inputFile=document.getElementById('file');
 inputFile.onchange=function(){
   console.log(file.files);
   var reader = new FileReader();
   //	读取 this.files[0] 文件里面的内容;
   reader.readAsText(this.files[0]);
   //	当文件的内容读取完成之后促发;内容存放到了result里面了;
   reader.onload = function() {
   //	把result里面的内容渲染到div里面
     div.innerHTML = this.result;
   }
 }
}

readAsDataURL()

开始读取指定的Blob或者files中的内容。一旦完成,result属性中将包含一个data: URL格式的Base64字符串以表示所读取文件的内容。
可以用于读取图片;
代码示例:

<input type="file" name="" id="file" multiple>
  <!-- 图片的src为空 -->
  <img src="" alt="" width="200">
  <script>
    window.onload=function(){
      var img= document.querySelector('img');
      var inputFile=document.getElementById('file');
      inputFile.onchange=function(){
        console.log(file.files);
        var reader = new FileReader();
        reader.readAsDataURL(this.files[0]);
        reader.onload = function() {
        //	result中存放了图片的信息,把它赋值给图片的src,就会在页面上渲染出图片
          img.src = this.result;
        }
      }
    }
  </script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值