现代浏览器支持拖放本地文件到浏览器上,应用可以进行文件的编辑、上传等操作,但是之前并不支持文件夹拖放。但是从最新的Chrome 21开发版开始,这个功能已经得到了支持。
文件拖放
之前文件拖放的代码如下:
<div id=”dropzone”></div> var dropzone = document.getElementById('dropzone'); dropzone.ondrop = function(e) { var length =e.dataTransfer.files.length; for (var i = 0; i < length;i++) { var file =e.dataTransfer.files[i]; ... // do whatever you want } };
通过这段代码,我们可以从本地拖放一个或者多个文件到浏览器里。但是当我们拖拽的是文件夹时,操作会被拒绝或者被当成文件处理而导致失败。
文件夹拖放
Chrome21允许我们从文件系统拖放一个或者多个文件夹到浏览器窗口上,你只需要对处理放置对象的方式进行一些调整。