# 一、常見問題
## (1)瀏覽器相關問題
### 1.WebUploader在谷歌瀏覽器中反應緩慢遲鈍
#### 方法1.升級瀏覽器
升級瀏覽器至59.0.3071.86(正式版本) (32 位)
經測試,谷歌59.0.3071.25(正式版本) (32 位)與59.0.3071.86(正式版本) (32 位)均不存在反應緩慢的現象。
#### 方法2.修改代碼
修改 初始化webuploader的 js
~~~
accept: {
title: 'Images',
extensions: 'jpg,jpeg,png',
mimeTypes: 'image/*'
}
~~~
改為
~~~
accept: {
title: 'Images',
extensions: 'jpg,jpeg,png',
mimeTypes: 'image/jpg,image/jpeg,image/png' //修改這行
}
~~~
input[file]標簽的accept屬性可用于指定上傳文件的 MIME類型 。
例如,想要實現默認上傳圖片文件的代碼,代碼可如下:
<input type="file" name="file" class="element" accept="image/*">
效果如下圖所示,默認過濾掉所有非圖片文件:
但是!
這段代碼在Chrome和Safari等Webkit瀏覽器下卻出現了響應滯慢的問題,可能要等 6~10s 才能彈出文件選擇對話框。簡直不能忍呀。
在IE和Firefox中使用 accept=”image/*” 屬性則沒有發現響應延遲的問題。
于是幾經嘗試后,發現是 accept=”image/*” 屬性的問題,刪掉它或者將 * 通配符修改為指定的MIME類型,就可以解決Webkit瀏覽器下的對話框顯示滯慢的問題。
解決辦法如下:
<input type="file" accept="image/gif,image/jpeg,image/jpg,image/png,image/svg">
accept=”image/*”屬性會對每一個文件都遍歷一次所有的”image/*”文件類型,當文件較多時,文件的檢驗時間較長,這可能是Webkit的底層實現的bug。
另外,
accept=”audio/*”和 accept=”video/*” 屬性 在 Webkit瀏覽器下也會有同樣的響應延遲的問題。同理,通過將 * 通配符 修改成指定的MIME類型就可解決。