通过拖放文件上传

时间:2011-07-18 20:35:36

标签: flash flex html5 file-upload

好的,这是我的问题。
我需要能够让用户将多个图像从定位文件系统拖到flash / flex / html5应用程序上,然后接收文件名详细信息并联系服务器。
服务器响应然后上传文件(假设服务器验证通过)
我知道这可以用Java完成,但这不是一种选择
请不要建议使用FileReference.browse函数,因为修饰者要使用它来愚蠢(这里不是开玩笑)并且必须拖放。
这必须适用于所有当前版本的流行浏览器(Chrome,FireFox,IE,Safari)

它归结为我想在网页上放置一个图像,说明放在这里并允许他们通过放下它来上传文件。
此外,这必须是一个网页界面,我不想安装插件或下载的Air应用程序。(他们对所有这些都是愚蠢的)

这可以用flash / flex / html5吗?或者它们的任意组合

3 个答案:

答案 0 :(得分:5)

无法使用flash / flex中的网络应用程序 - 但您可以在空中进行。这基本上是一个安全问题。

就HTML5而言 - 只有Firefox和Chrome目前支持我知道的HTML5本机拖放事件(Chrome会包含一些其他的webkit变体,例如safari)

答案 1 :(得分:4)

试试这个http://www.plupload.com/ 它包括各种上传的闪光灯,银灯,齿轮,html 5和html4。

正如其他人所说,拖放不适用于所有浏览器。限制如下。

  1. 文件的拖放支持目前仅适用于Firefox 3.5+。 WebKit / Opera尚不支持此功能。
  2. 只能在Firefox 3.5+上进行图像大小调整,并且只能以固定质量进行。 WebKit / Opera不支持对所选文件的直接数据访问。
  3. 任何浏览器目前都不支持文件类型过滤。但是我们填写了HTML 5 accept属性,所以一旦支持它就可以工作。
  4. 仅在基于Gecko的浏览器中支持分段上传。 WebKit不支持直接访问文件数据。
  5. 如果你在Applet中穿插,试试这个.. http://jumploader.com/ 这两个控件都允许您在客户端调整大小(我知道您没有请求)

答案 2 :(得分:0)

对于HTML5,请参阅此精彩教程(包括浏览器范围):http://www.thebuzzmedia.com/html5-drag-and-drop-and-file-api-tutorial