我没有看到任何例子做到这一点。这是不允许在api规格?
我正在寻找一个容易的拖放解决方案来上传整个文件夹树的照片。
解决方法
现在可以,由于Chrome> = 21。
function traversefiletree(item,path) {
path = path || "";
if (item.isFile) {
// Get file
item.file(function(file) {
console.log("File:",path + file.name);
});
} else if (item.isDirectory) {
// Get folder contents
var dirReader = item.createReader();
dirReader.readEntries(function(entries) {
for (var i=0; i<entries.length; i++) {
traversefiletree(entries[i],path + item.name + "/");
}
});
}
}
dropArea.addEventListener("drop",function(event) {
event.preventDefault();
var items = event.dataTransfer.items;
for (var i=0; i<items.length; i++) {
// webkitGetAsEntry is where the magic happens
var item = items[i].webkitGetAsEntry();
if (item) {
traversefiletree(item);
}
}
},false);
更多信息:https://protonet.info/blog/html5-experiment-drag-drop-of-folders/