时间:2020-11-27 11:31:31 | 栏目:JavaScript代码 | 点击:次
前言
Blob 对象表示一个不可变、原始数据的类文件对象。Blob 表示的不一定是JavaScript原生格式的数据。File 接口基于Blob,继承了 blob 的功能并将其扩展使其支持用户系统上的文件。
本文主要给大家介绍了关于js获取图片url的Blob值并预览的相关内容,下面话不多说了,来一起看看详细的介绍吧
方法如下
1)使用 XMLHttpRequest 对象获取图片url的Blob值
//获取图片的Blob值 function getImageBlob(url, cb) { var xhr = new XMLHttpRequest(); xhr.open("get", url, true); xhr.responseType = "blob"; xhr.onload = function() { if (this.status == 200) { if(cb) cb(this.response); } }; xhr.send(); }
注意这里的XMLHttpRequest必须使用异步模式,同步模式不能设置 responseType = "blob"
2)使用 FileReader 对象获取图片 Blob 对象的 data 数据
function preView(url){ let reader = new FileReader(); getImageBlob( url , function(blob){ reader.readAsDataURL(blob); }); reader.onload = function(e) { var img = document.createElement("img"); img.src = e.target.result; document.body.appendChild(img); } }
总结