chrome 上传文件 控件,点击的时候会延迟近10S的时间!!!!!但是在ff和ie上是正常的,
情况如下:
http://blog.youkuaiyun.com/hc1104/article/details/53547258
这边的情况和上面是一样的,但是把accept换成.zip,.apk,还是会有问题。。。(网上都是只针对图片,所以没有问题)
由于我是要上传zip和apk的,网上的限制成图片的方法解决不了.找了两天的时间,表示一头雾水。。
只能多翻墙去 google一下有没有 解决方案.
偶然,我在测试过程中, 发现一个奇怪的现象:
当我翻墙着的时候,问题貌似不会出现了!!而不翻墙的情况下,多点几下,问题就出现了。。=。=
我反复测试了多次,确是这样,我就联想到了google服务,在国内,google的很多服务不能访问,会否是网络?
于是想到查看网络请求,fiddle 就派上用场了,如下图,果然在我操作的时候有不少google的请求
这有点蛋疼了,如果是chrome自己的动作,表示也没什么办法…..因为已经涉及到最原始的控件了
这些请求中有safe的字眼,于是我猜,是否 chrome的一些设置引起的?,找了几个嫌疑,发现,下图的这个勾选去掉,则一切顺利.. +_+
网上找到的对头的讨论但也没有解决方案:
https://bugs.chromium.org/p/chromium/issues/detail?id=103737
疑问
有哪些文件会?
zip,apk 都会,图片不会(即图片不会有请求
要怎么做?
如果只是图片,则,找网上的解决方案即可,把文件类型限制死为image
触发请求是在 点击的时候,可以在点击选择文件时:
document.getElementById(‘fileImport’).value = null;
把input的文件置为空,这样,点击的时候就不会去请求了!!
遗留问题
如果像上面这样解决,用户点 选择文件时 点取消,文件也都会不见了.
像这样的体验会更好点,
https://blueimp.github.io/jQuery-File-Upload/
这个插件,由于每次选择完文件后,都会清空input,则不会出现这个bug
而且我发现这个问题要多点几次才能重现,,,
如要重现,可多点击: