js如何获取图片url的Blob值并预览示例代码


Posted in Javascript onMarch 07, 2019

前言

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);
 }
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
qTip2 精致的基于jQuery提示信息插件
Feb 17 Javascript
js选取多个或单个元素的实现代码(用class)
Aug 22 Javascript
使用apply方法实现javascript中的对象继承
Dec 16 Javascript
jQuery中:selected选择器用法实例
Jan 04 Javascript
jquery实现拖拽调整Div大小
Jan 30 Javascript
JavaScript显示当前文档最后修改日期的方法
Mar 19 Javascript
HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
Nov 25 Javascript
js实现不重复导入的方法
Mar 02 Javascript
概述VUE2.0不可忽视的很多变化
Sep 25 Javascript
React实践之Tree组件的使用方法
Sep 30 Javascript
VUE重点问题总结
Mar 19 Javascript
jQuery实现简单轮播图效果
Dec 27 jQuery
mpvue全局引入sass文件的方法步骤
Mar 06 #Javascript
angular6根据environments配置文件更改开发所需要的环境的方法
Mar 06 #Javascript
vue项目前端埋点的实现
Mar 06 #Javascript
vue2.0结合Element-ui实战案例
Mar 06 #Javascript
JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能分析
Mar 06 #Javascript
jQuery使用$.extend(true,object1, object2);实现深拷贝对象的方法分析
Mar 06 #jQuery
微信小程序利用swiper+css实现购物车商品删除功能
Mar 06 #Javascript
You might like
PHP 分页类(模仿google)-面试题目解答
2009/09/13 PHP
php编写一个简单的路由类
2011/04/13 PHP
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
让iframe框架网页在任何浏览器下自动伸缩
2006/08/18 Javascript
大家未必知道的Js技巧收藏
2008/04/07 Javascript
Javascript 面向对象 重载
2010/05/13 Javascript
用js+iframe形成页面的一种遮罩效果的具体实现
2013/12/31 Javascript
node.js中的buffer.Buffer.byteLength方法使用说明
2014/12/10 Javascript
JS实现的通用表单验证插件完整实例
2015/08/20 Javascript
javascript匀速运动实现方法分析
2016/01/08 Javascript
JQuery+EasyUI轻松实现步骤条效果
2016/02/22 Javascript
仅一个form表单 js实现注册信息依次填写提交功能
2016/06/12 Javascript
vue.js入门(3)——详解组件通信
2016/12/02 Javascript
Vue2.0 UI框架ElementUI使用方法详解
2017/04/14 Javascript
基于layer.js实现收货地址弹框选择然后返回相应的地址信息
2017/05/26 Javascript
vue loadmore 组件滑动加载更多源码解析
2017/07/19 Javascript
Vue利用History记录上一页面的数据方法实例
2018/11/02 Javascript
jQuery实现的3D版图片轮播示例【滑动轮播】
2019/01/18 jQuery
vue实现打地鼠小游戏
2020/08/21 Javascript
[01:30:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第二场 2月2日
2021/03/11 DOTA
python中 ? : 三元表达式的使用介绍
2013/10/09 Python
Python的IDEL增加清屏功能实例
2017/06/19 Python
python3操作微信itchat实现发送图片
2018/02/24 Python
python计算日期之间的放假日期
2018/06/05 Python
Python实现矩阵相乘的三种方法小结
2018/07/26 Python
tensorflow-gpu安装的常见问题及解决方案
2020/01/20 Python
40行Python代码实现天气预报和每日鸡汤推送功能
2020/02/27 Python
Jupyter Notebook 远程访问配置详解
2021/01/11 Python
免费获得微软MCSD证书赶快行动吧!
2012/11/13 HTML / CSS
纽约复古灵感的现代珠宝品牌:Lulu Frost
2018/03/03 全球购物
西班牙著名的珠宝首饰品牌:P D PAOLA
2018/09/15 全球购物
会计岗位职责模板
2014/03/12 职场文书
副校长个人对照检查材料思想汇报
2014/10/04 职场文书
考试作弊检讨书1000字(5篇)
2014/10/19 职场文书
五年级下册复习计划
2015/01/19 职场文书
2015年学校政教工作总结
2015/07/20 职场文书