我发现有几个资源声称,GMail File Upload 结合了 Flash 来显示进度条或允许多个文件上传。
例如:
我的问题是,GMail 使用 Flash 生成上传进度条是真的吗?如果不是,GMail如何在不支持FileAPI的IE9中实现Progress Bars?我做了几个测试,在 GMail 文件上传过程中我无法确认 Flash 的存在:
- 我安装了 FlashBlocker,它有效地阻止了 Flash 内容。但是,GMail 文件上传进度条没有被阻止。
- 我右击进度条看它是否是 Flash 小程序,但不是。
- 我检查了源代码,但没有找到任何对 .swf 代码的引用。
那么GMail是如何实现它的文件上传功能的呢?它在包括IE9在内的所有浏览器中都显示出来了呢?
任何想法,如果其他开发人员可以达到相同的结果,或者文件上传进度条是否是谷歌特定的?
我知道有很多可用于 Google Upload 的插件,但我希望有干净的 JavaScript、HTML5、PHP、CSS3 和与 IE9 的兼容性。因此,如果我理解这个主题,我愿意自己编写所有代码。
我使用以下工具:
- Javascript
- HTML5
- PHP
- MySQL
- CSS3
谢谢你。
更新:
看起来GMail在上传文件时使用Flash来计算进度百分比。它比使用 CSS 生成进度条,因此没有使用 Flash 小程序来显示进度条。
我通过在 IE9 中禁用 Flash 发现了这一点。与 Chrome 相比,在 IE 9 中可以轻松禁用 Flash。
拜托,如果你对这个话题有什么要补充的,我很乐意讨论。例如,有趣的是,Flash 小程序如何生成文件上传进度百分比,以及它如何与 JavaScript 或 CSS 交流该信息。