我在Windows Vista上的Safari 5.1中遇到多个文件上传时遇到了不一致(还没有尝试过其他平台)。 input元素具有multiple
标志,允许选择多个文件。当用户确实选择多个文件时,会出现问题。在这种情况下,每个File
都有一个size
属性0
。如果(仍然使用multiple
标志),用户只选择一个文件,则size
属性正确包含文件大小。
问题可以在以下示例中看到。测试并查看单个文件选择和多个文件选择的输出。 (您需要在测试之间重置)。 JsFiddle Test
有没有人知道解决方法?
答案 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重现了这一点。
使用“多个”选项选择一张或多张照片很好 - 这只会影响视频。