Javascript FileAPI:迭代目录?

Javascript FileAPI:迭代目录?,javascript,drag-and-drop,fileapi,Javascript,Drag And Drop,Fileapi,Firefox3.6让我们将一个目录放到某个元素上(使用拖放API),并使用。这是如何与目录一起工作的 Mac OS X Finder将一些目录显示为文件(.app、.tmbundle、.abbu、…)。在大多数情况下,这是美妙的。在通过文件和DNDAPI与浏览器交互的情况下,情况并非如此。最终用户无法区分真实文件和类似my-addressbook-backup.abbu的文件 因此,Javascript UI必须能够识别目录结构。如果它不能遍历结构,它必须相应地通知用户 关于如何实现这两个目标

Firefox3.6让我们将一个目录放到某个元素上(使用拖放API),并使用。这是如何与目录一起工作的

Mac OS X Finder将一些目录显示为文件(.app、.tmbundle、.abbu、…)。在大多数情况下,这是美妙的。在通过文件和DNDAPI与浏览器交互的情况下,情况并非如此。最终用户无法区分真实文件和类似my-addressbook-backup.abbu的文件

因此,Javascript UI必须能够识别目录结构。如果它不能遍历结构,它必须相应地通知用户

关于如何实现这两个目标有什么想法吗

编辑:

我可以看到允许JS遍历目录时出现的(潜在)问题。我并不要求目录遍历本身(尽管我不会绑定为能够)。我说的是Foo.app被视为一个文件(用户通过Finder.app可以看到),但实际上是一个目录(在Terminal.app中查看时可以看到)

文件API目前不提供任何遍历机制。因此,无法访问addressbook-dump.abbu中更深层次的嵌套文件。有什么想法可以让这成为可能吗


否则,我必须告诉我的OSX用户对他们的地址簿文件进行归档(例如ZIP),然后“上传”那个ZIP(我实际上可以在JS中读取)。尽管这是一个解决办法,而不是一个解决方案

理论上,您所描述的内容可以通过
FileReader
API实现。例如 读取.zip文件(hit-load-photos.zip),解压缩其内容,然后 向用户显示其中包含的图片列表

对于常规文件夹拖放,Chrome/WebKit中有两个bug:。当这些问题得到解决时,您将能够将文件夹从操作系统拖到
上,并遍历其所有层次结构。要查看
webkitdirectory
,请在Chrome中查看。

看起来很有希望ZIP示例(已在我的问题中说明)是一个非常糟糕的解决方法。我刚才还不知道文件系统API。迫不及待:)