h5 加载图片后显示的代码分析

加载图片后显示的代码分析


功能: 加载图片,然后显示 


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <input type="file" id='file'; οnchange="c()" />
    <img src="" id='show' />
</body>
<script type="text/javascript">
    function c () {
        var r= new FileReader();
        f=document.getElementById('file').files[0];
        r.readAsDataURL(f);
        r.οnlοad=function  (e) {
        document.getElementById('show').src=this.result;
    };
}
</script>
</html>


一:

FileReader对象的readAsDataURL方法可以将读取到的文件编码成Data URL。Data URL是一项特殊的技术,可以将资料(例如图片)内嵌在网页之中,不用放到外部文件。使用Data URL的好处是,您不需要额外再发出一个HTTP 请求到服务器端取得额外的资料;而缺点便是,网页的大小可能会变大。它适合应用在内嵌小图片,不建议将大图像文件编码成Data URL来使用。您的图像文件不能够超过浏览器限定的大小,否则无法读取图像文件。

参考文档:http://blog.okbase.net/jquery2000/archive/1296.html


二:

当 FileReader 读取文件的方式为  readAsArrayBufferreadAsBinaryStringreadAsDataURL 或者 readAsText 的时候,会触发一个 load 事件。从而可以使用  FileReader.onload 属性对该事件进行处理。


// 一个文件上传的回调 <input type="file" οnchange="onChange(event)">
function onChange(event) {
  var file = event.target.files[0];
  var reader = new FileReader();
  reader.onload = function(event) {
    // 文件里的文本会在这里被打印出来
    console.log(event.target.result)
  };

  reader.readAsText(file);
}




参考文档:

https://developer.mozilla.org/zh-CN/docs/Web/API/FileReader/onload







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值