safari中的文件输入大小问题,用于多个文件选择

时间:2011-08-29 13:52:26

标签: javascript file-upload safari filesize fileapi

我在Windows Vista上的Safari 5.1中遇到多个文件上传时遇到了不一致(还没有尝试过其他平台)。 input元素具有multiple标志,允许选择多个文件。当用户确实选择多个文件时,会出现问题。在这种情况下,每个File都有一个size属性0。如果(仍然使用multiple标志),用户只选择一个文件,则size属性正确包含文件大小。

问题可以在以下示例中看到。测试并查看单个文件选择和多个文件选择的输出。 (您需要在测试之间重置)。 JsFiddle Test

有没有人知道解决方法?

4 个答案:

答案 0 :(得分:5)

这是一个Safari漏洞。暂时没有解决方案。这是我做过http://jsfiddle.net/rHd26/6/

的测试

答案 1 :(得分:1)

我们的解决方法是删除多个选项...我们的文件大小为0,但我们也得到了错误的文件名,并在文件名中添加了一些奇怪的字符。也许这就是为什么我们得到0的大小:因为第一个属性(文件名)没有正确分割,文件名末尾存在该坏字符。

答案 2 :(得分:0)

检查这个黑客。

它详细解释了如何仅删除Safari的多个选项,而只留下其他浏览器。

Any workarounds for the Safari HTML5 multiple file upload bug?

答案 3 :(得分:0)

此问题的一个变体似乎也感染了刚刚发布的iOS 7上的移动Safari。如果您有一个“多个”文件输入字段,并选择一个视频,那么File API返回的文件大小为0.确实在此页面顶部的jsfiddle重现了这一点。

使用“多个”选项选择一张或多张照片很好 - 这只会影响视频。