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 相关文章推荐
JavaScript 中的replace方法说明
Apr 13 Javascript
jquery 经典动画菜单效果代码
Jan 26 Javascript
文本框中,回车键触发事件的js代码[多浏览器兼容]
Jun 07 Javascript
一个简单的弹性返回顶部JS代码实现介绍
Jun 09 Javascript
jQuery.holdReady()使用方法
May 20 Javascript
jquery处理json对象
Nov 03 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
Mar 09 Javascript
ionic3 懒加载
Aug 16 Javascript
Vue2.0点击切换类名改变样式的方法
Aug 22 Javascript
微信小程序实现自动定位功能
Oct 31 Javascript
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 jQuery
解决在layer.open中使用时间控件laydate失败的问题
Sep 11 Javascript
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
Oracle 常见问题解答
2006/10/09 PHP
php实现SAE上使用storage上传与下载文件的方法
2015/06/29 PHP
php中 $$str 中 "$$" 的详解
2015/07/06 PHP
PHP面向对象程序设计类的定义与用法简单示例
2016/12/27 PHP
PHP+百度AI OCR文字识别实现了图片的文字识别功能
2019/05/08 PHP
laravel框架学习笔记之组件化开发实现方法
2020/02/01 PHP
来自国外的页面JavaScript文件优化
2010/12/08 Javascript
js使下拉列表框可编辑不止是选择
2013/12/12 Javascript
JavaScript基本语法讲解
2015/06/03 Javascript
jquery插件NProgress.js制作网页加载进度条
2015/06/05 Javascript
实例讲解js验证表单项是否为空的方法
2016/01/09 Javascript
jquery ui dialog替代confirm实例分析
2016/01/25 Javascript
提高Web性能的前端优化技巧总结
2017/02/27 Javascript
推荐三款日期选择插件(My97DatePicker、jquery.datepicker、Mobiscroll)
2017/04/21 jQuery
jQuery实现的下雪动画效果示例【附源码下载】
2018/02/02 jQuery
关于Vue的路由权限管理的示例代码
2018/03/06 Javascript
js回溯法计算最佳旅行线路代码实例
2019/09/11 Javascript
基于javascript实现贪吃蛇小游戏
2019/11/25 Javascript
如何在postman测试用例中实现断言过程解析
2020/07/09 Javascript
[01:00:17]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第二场 1月25日
2021/03/11 DOTA
python使用内存zipfile对象在内存中打包文件示例
2014/04/30 Python
Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法
2018/09/17 Python
face++与python实现人脸识别签到(考勤)功能
2019/08/28 Python
python conda操作方法
2019/09/11 Python
Python计算公交发车时间的完整代码
2020/02/12 Python
详解css position 5种不同的值的用法
2019/07/30 HTML / CSS
CSS3实现缺角矩形,折角矩形以及缺角边框
2019/12/20 HTML / CSS
HTML5之SVG 2D入门10—滤镜的定义及使用
2013/01/30 HTML / CSS
委托书模板
2014/04/04 职场文书
《生命的药方》教学反思
2014/04/08 职场文书
党员创先争优活动总结
2014/05/04 职场文书
完美的中文自荐信
2014/05/24 职场文书
七夕活动策划方案
2014/08/16 职场文书
婚前财产协议书范本
2014/10/19 职场文书
冰雪公主观后感
2015/06/16 职场文书
婚庆开业庆典主持词
2015/06/30 职场文书