我正在尝试通过拖放操作加载多个图像,而不是调整它们的大小并将它们添加为缩略图。调整大小部分非常重要,因为图像可能非常大,我想让缩略图变小。
这是我的代码:
loadingGif(drop);
for (var i=0;i<files.length;i++) {
var file = files[i];
var reader = new FileReader();
reader.onload = function(e) {
var src = e.target.result;
var img = document.createElement('img');
img.src = src;
var scale = 100/img.height;
img.height = 100;
img.width = scale*img.width;
output.push('<div id="imagecontainer"><div id="image">'+img+'</div><div id="delimage"><img src="img/del.jpg"" /></div></div>');
if(output.length == files.length) {
drop.removeChild(drop.lastChild);
drop.innerHTML += output.join('');
output.length = 0;
}
}
reader.readAsDataURL(file);
}
正如您可能会告诉我的那样,我在我的拖放区中插入了一个加载 gif 图像,直到所有文件都被加载(output.length == files.length)。加载文件时,我将 html 添加到数组中,如果加载完成,我将打印该数组。问题是我似乎无法将 img 对象(我需要这个对象来调整图像大小)添加到 html 字符串中,这似乎很明显,因为 img 是一个对象......所以我对你们的问题是:怎么做我这样做?:)