只有chrome 22及更高版本支持在浏览器上传(html5)的拖放文件夹中上传相关文件夹名称。
当我尝试使用chrome drag& drop文件夹支持上传多个文件时,我遇到了某种限制。我找不到任何方法来改变或禁用这个限制。
当您只选择1000个文件并放入上传器时,它确实有效,并在等待一段时间进行处理后将这些文件添加到上传列表中。没关系。
当您选择包含1000个文件的文件夹并放入上传器时,上传者只需在该文件夹中添加随机的100个文件。
当你创建110个文件夹,然后在文件夹中包含1个文件,然后上传者只添加100个文件,留下10个文件夹。
看起来,chrome文件/文件夹上传机制以某种方式限制了任何文件夹中的最大项目,同时递归地抓取文件&文件夹。限制数量为100。
我找不到任何相关的文档,我迫切需要将这个限制提升到1000个文件/文件夹,每个文件/文件夹最少或没有限制。
谢谢大家。
答案 0 :(得分:2)
搜索相关文档2天后,我可以在以下网址找到答案。
https://developer.mozilla.org/en-US/docs/Web/API/DirectoryReader#readEntries
我能够修复blueimp上传器。
jquery.fileupload.js 中的
查找
} else if (entry.isDirectory) {
dirReader = entry.createReader();
dirReader.readEntries(function (entries) {
that._handleFileTreeEntries(
entries,
path + entry.name + '/'
).done(function (files) {
dfd.resolve(files);
}).fail(errorHandler);
}, errorHandler);
} else {
替换:
} else if (entry.isDirectory) {
dirReader = entry.createReader();
var entries = [];
var readEntries = function () {
dirReader.readEntries(function (results /* entries */) {
if (results.length) {
entries = entries.concat(Array.prototype.slice.call(results || [], 0));
readEntries();
} else {
that._handleFileTreeEntries(
entries,
path + entry.name + '/'
).done(function (files) {
dfd.resolve(files);
}).fail(errorHandler);
}
}, errorHandler);
};
readEntries();
} else {
我希望有所帮助。