jQuery无法在fadeIn()函数中运行URL.createObjectUrl

s4n0splo  于 2022-12-22  发布在  jQuery
关注(0)|答案(1)|浏览(131)

这段代码可以很好地将图像上传到浏览器,然后再上传到没有进度条的服务器。我想添加一个进度条,在两次上传过程中运行。我想让它在fadeIn()函数完成后运行。我能找到的唯一方法是运行fadeIn()函数内的代码,但是URL.createObjectURL(event.target.files[i])抛出了这个错误

Uncaught TypeError: Cannot read properties of undefined (reading 'target')
    at HTMLDivElement.<anonymous>

不知道该怎么办。
x一个一个一个一个x一个一个二个一个x一个一个三个一个

mkh04yzy

mkh04yzy1#

想想看,如果我在调用fadeIn()之前先创建一个Blob数组,然后在里面使用它,它会工作得很好。

var total_files = document.getElementById("files").files.length;
var blobs = new Blob([]);
for (var i = 0; i < total_files; i++) {
   blobs[i] = URL.createObjectURL(event.target.files[i]);
}

$(".progressbar_background").fadeIn(200, function () {
var $iframe = $('#image_preview');

for (var i = 0; i < total_files; i++) {
   $iframe.contents().find("body").append("<img id='image" + i + "' with=100 height=100 src='" + blobs[i] + "'>");
}
});

相关问题