一.URL.createObjectURL URL.createObjectURL()方法会根据传入的参数创建一个指向该参数对象的URL. 这个URL的生命仅存在于它被创建的这个文档里,新的对象URL指向执行的File对象或者是Blob对象. 语法: objectURL = window.URL.createObjectURL(blob || file); File对象,就是一个文件,比如我用input type="file"标签来上传文件,那么里面的每个文件都是一个File对象. B…
.URL.createObjectURL URL.createObjectURL()方法会根据传入的参数创建一个指向该参数对象的URL. 这个URL的生命仅存在于它被创建的这个文档里. 新的对象URL指向执行的File对象或者是Blob对象. 语法: objectURL = URL.createObjectURL(blob || file); 参数: File对象或者Blob对象 这里大概说下File对象和Blob对象: File对象,就是一个文件,比如我用input type="file&qu…
有时候需要在前端侧对于动态生成的内容进行下载,比如页面上某一段文本信息,再比如对页面进行分享的时候,希望分享图片是页面内容的实时截图,此时,这个图片就是动态的,纯HTML显然是无法满足我们的需求的,借助JS和其它一些HTML5特性,例如,将页面元素转换到canvas上,然后再转成图片进行下载. 原理其实很简单,我们可以将文本或者JS字符串信息借助Blob转换成二进制,然后,作为<a>元素的href属性,配合download属性,实现下载. 代码也比较简单,如下示意(兼容Chrome和Firef…
知识预备:1. URL.createObjectURL() 静态方法会创建一个 DOMString,它的 URL 表示参数中的对象.这个 URL 的生命周期和创建它的窗口中的 document 绑定.2.在每次调用 createObjectURL() 方法时,都会创建一个新的 URL 对象,即使你已经用相同的对象作为参数创建过.当不再需要这些 URL 对象时,每个对象必须通过调用 URL.revokeObjectURL() 方法来释放.浏览器会在文档退出的时候自动释放它们,但是为了获得最佳性能和…
URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL.这个 URL 的生命周期和创建它的窗口中的 document 绑定.这个新的URL 对象表示指定的 File 对象或 Blob 对象. objectURL = URL.createObjectURL(blob); blob是用来创建 URL 的 File 对象或者 Blob 对象​ 在每次调用 createObjectURL() 方法时,都会创建一个新的 URL 对象,即…
URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL.这个 URL 的生命周期和创建它的窗口中的 document 绑定.这个新的URL 对象表示指定的 File 对象或 Blob 对象. URL.createObjectURL(blob)和FileReader.readAsDataURL(file)很相似: 区别 通过FileReader.readAsDataURL(file)可以获取一段data:base64的字符串 通…
之前做图片.视频上传预览常用的方案是先把文件上传到服务器,等服务器返回文件的地址后,再把该地址字符串赋给img或video的src属性,这才实现所谓的文件预览.实际上这只是文件“上传后再预览”,这既浪费了用户的时间,也浪费了不可轻视的流量. 最近上网查资料才知道其实可以很轻松地实现“上传前预览”.实现方法有两种:FileReader和URL.createObjectURL. 关于FileReader的讲解可以看这里 关于URL.createObjectURL方法的讲解和应用可以看这里 demo地…
//preview img : filereader方式 document.getElementById('imgFile').onchange = var ele = document.getElementById('imgFile').files[0]; var fr = new FileReader(); fr.onload = function(ele){ var pvImg = new Image(); pvImg.src = ele.target.result; pvImg.setA…
/** FormData ==>表单数据 能自动把表单数据拼接打包 当ajax发送数据时,发送打包的数据; 还可以使用FormData对象的append(key,value)添加数据 FormData还可以自动帮忙打包文传送件数据,后台通过$_FILES数组接收 说明FormData对象既可以打包发送表单的数据,也可以手动append数据 注意,input Dom对象有一个files属性 十一哥文件数组 **/ <!doctype html> <html> <head&…
URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL.这个 URL 的生命周期和创建它的窗口中的 document 绑定.这个新的URL 对象表示指定的 File 对象或 Blob 对象. mdn传送门:https://developer.mozilla.org/zh-CN/docs/Web/API/URL/createObjectURL <input class="avatarCon" type="…