HTML <input> 标签的 accept 属性
规定文件长传时提交需要的文件类型。1.只能接受 GIF 和 JPEG 两种图像
<form>
<input type="file" name="pic" id="pic" accept="image/gif, image/jpeg"
/>
</form>
2.若不限制图像的格式,接受所有图片类型,则:
<form>
<input type="file" name="pic" id="pic" accept="image/*"
/>
</form>
3.accept属性,若是以*为通配符做过滤,在Chrome和Safari等Webkit浏览器下会出现响应滞慢的问题,估计得延迟5s左右才会弹出文件选择对话框。
但是在IE和Firefox中则不会查询这种问题。
4.解决方案:
将* 通配符改为指定的文件类型,不同类型间以逗号隔开。
<form>
<input type="file" name="pic" id="pic" accept="image/gif,image/jpeg,image/tiff,image/x-ms-bmp,image/x-photo-cd,image/x-png,image/x-portablebitmap,image/x-portable-greymap,image/x-portable-pixmap,image/x-rgb"/> </form> 5.原由: *通配符会对每一个文件进行一次遍历操作,匹配符合的类型。如果文件太多,遍历的时间就会很长,因此检验的时间就会加长,所以会出现这种滞慢的问题。 6.accept的属性列表有:
(1).accept="application/msexcel"
(2).accept="application/msword"
(3).accept="application/pdf"
(4).accept="application/poscript"
(5).accept="application/rtf"
(6).accept="application/x-zip-compressed"
(7).accept="audio/basic"
(8).accept="audio/x-aiff"
(9).accept="audio/x-mpeg"
(10).accept="audio/x-pn/realaudio"
(11).accept="audio/x-waw"
(12).accept="image/gif"
(13).accept="image/jpeg"
(14).accept="image/tiff"
(15).accept="image/x-ms-bmp"
(16).accept="image/x-photo-cd"
(17).accept="image/x-png"
(18).accept="image/x-portablebitmap"
(19).accept="image/x-portable-greymap"
(20).accept="image/x-portable-pixmap"
(21).accept="image/x-rgb"
(22).accept="text/html"
(23).accept="text/plain"
(24).accept="video/quicktime"
(25).accept="video/x-mpeg2"
(26).accept="video/x-msvideo"
注:个别类型可能会出现浏览器兼容问题。