我发现的一些资源声称,GMail文件上传包含Flash以显示进度条或允许多个文件上传。
例如:
我的问题是,GMail使用Flash生成上传进度条吗?如果没有, GMail如何在不支持FileAPI的IE9中实现进度条?我做了几次测试,在GMail文件上传过程中我无法确认是否存在Flash:
那么GMail如何改变其文件上传功能,该功能会在包括IE9在内的所有浏览器中显示?
请问,如果其他开发者可以获得相同的结果,或者文件上传进度条是否特定于Google?
我知道有很多插件可供Google上传,但我希望有干净的JavaScript,HTML5,PHP,CSS3以及与IE9的兼容性。因此,如果我理解了这个主题,我愿意自己编写所有代码。
我使用以下工具:
谢谢。
看起来GMail使用Flash在上传文件时计算进度百分比。它使用CSS来生成进度条,因此没有使用Flash小程序来显示进度条。
我通过在IE9中禁用Flash来发现这一点。与Chrome相比,可以在IE 9中轻松禁用Flash。
如果您有任何要添加到此主题的内容,请高兴地讨论。例如,知道Flash applet如何生成文件上传进度百分比以及如何使用JavaScript或CSS传达该信息将会很有趣。
答案 0 :(得分:3)
我已经进一步探索过,我必须确认,是的,至今,GMail必须使用支持文件/附件上传的多个Flash对象。
很难在Chrome中禁用Flash。但是,它可以在IE中禁用。在IE中禁用Flash后,GMail已经切换到另一个没有进度条的交互式上传系统。
这清楚地证明了GMail仍然使用Flash来支持其上传例程。
答案 1 :(得分:2)
Google大约2年前转为HTML5多文件上传。我认为他们使用后备闪存上传器。 http://www.webmonkey.com/2010/04/google-turns-to-html5-for-gmails-new-drag-and-drop-attachments/
此库(jQuery文件 - 上传 - 此处演示:http://blueimp.github.com/jQuery-File-Upload/)声称它可以使用Internet Explorer的文件进度(至少某种方式; - )):
所有版本的Internet Explorer也将更新全局进度 每个基于iframe的上传后栏。但是因为IE没有报道 文件大小,全局进度条将测量每个上传的文件 同样不考虑上传文件的大小。 https://github.com/blueimp/jQuery-File-Upload/wiki/Browser-support