代码之家  ›  专栏  ›  技术社区  ›  user856232

浏览器文件夹上载

  •  6
  • user856232  · 技术社区  · 7 年前

    我希望能够让用户上载一个文件夹,其中包含所有文件和文件夹,并仅使用浏览器保留我的web应用的层次结构。

    我已经搜索过了,但没有找到如何做到这一点。每个人都说这是一个浏览器问题,我相信这是因为没有浏览器标准来做到这一点。

    我发现并使用了许多上传文件的javascript实现。当我把文件夹拖到上面时,我可以得到所有文件的列表,但文件夹和层次结构都消失了。如果我使用打开对话框的文件夹来查找文件,它们都不允许选择文件夹。

    Dropbox是如何做到这一点的?

    我可以将整个文件夹拖到Chrome或Safari(在mac上)上,它们都会上载文件夹和文件,并在dropbox中保留层次结构。

    难道没有人知道他们是如何做到这一点的,这样我就可以在我自己的基于浏览器的web应用程序上做同样的事情吗?

    1 回复  |  直到 7 年前
        1
  •  4
  •   caylee    7 年前

    您必须向输入标记添加一些参数以支持目录上载: webkitdirectory 对于基于Webkit的浏览器(如Chrome)和 mozdirectory 用于Mozilla浏览器(Firefox)。

    HTML代码可能如下所示:

    <input type="file" webkitdirectory mozdirectory … />
    

    你可以看看 https://stackoverflow.com/a/46562869 https://stackoverflow.com/a/8218074 ,这是对类似问题的回答。