readAsDataURL 方法会读取指定的 Blob或 File对象。读取操作完成的时候,readyState会变成已完成DONE,并触发 [loadend](https://developer.mozilla.org/zh-CN/docs/Web/Reference/Events/loadend "/zh-CN/docs/Web/Reference/Events/loadend")事件,同时 result属性将包含一个data:URL格式的字符串(base64编码)以表示所读取文件的内容。
语法
instanceOfFileReader.readAsDataURL(blob);
参数
blob
即将被读取的Blob或 File对象。
示例
HTML
JavaS中比需抖接朋功要朋插cript
function previewFile() {
var preview = document.querySelector('img');
var file = document.querySelector('input[type=file]').files[0];
var reader = new FileReader();
reader.addEventListener("load", function () {
preview.src = reader.result;
}, false);
if (file) {
reader.readAsDataURL(file);
}
}
读取多个文件遇新是直朋能到分览的例子
HTML
JavaS中比需抖接朋功要朋插cript
function previewFiles() {
var preview = document.querySelector('#preview');
var files = document.querySelector('input[type=file]').files;
function readAndPreview(file) {
// 确保 `file.name` 符合我们要求的扩展名
if ( /\.(jpe?g|png|gif)$/i.test(file.name) ) {
var reader = new FileReader();
reader.addEventListener("load", function () {
var image = new Image();
image.height = 100;
image.title = file.name;
image.src = this.result;
preview.appendChild( image );
}, false);
reader.readAsDataURL(file);
}
}
if (files) {
[].forEach.call(files, readAndPreview);
}
}
本文来源于网络:查看 >https://www.cnblogs.com/KillBugMe/p/13118051.html