input上传限定文件类型

accept="image/*"   限定为只能上传图片

accept=”audio/*   限定为只能上传音频
 accept=”video/*” 限定为只能上传视频

input[file]标签的accept属性可用于指定上传文件的 MIME类型 。

想要实现默认上传图片文件的代码,代码可如下

1 <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类型就可解决。

图片尽量不要加上svg

时间: 2024-11-04 23:48:54

input上传限定文件类型的相关文章

Struts文件上传allowedTypes问题,烦人的“允许上传的文件类型”

Struts的文件上传问题,相信很多人都会使用allowedTypes参数来配置允许上传的文件类型,如下. [html] view plaincopy <param name="allowedTypes"> image/png,image/bmp,image/jpg </param> 但是,用过这个参数的人都知道,allowedTypes是“文件类型”, 而不是“文件后缀名”,文件类型与文件后缀名有什么区别呢? 就如后缀名为bmp的图片的文件类型为image/b

struts2文件上传,文件类型 allowedTypes

struts2文件上传,文件类型 allowedTypes 1 '.a' : 'application/octet-stream', 2 '.ai' : 'application/postscript', 3 '.aif' : 'audio/x-aiff', 4 '.aifc' : 'audio/x-aiff', 5 '.aiff' : 'audio/x-aiff', 6 '.au' : 'audio/basic', 7 '.avi' : 'video/x-msvideo', 8 '.bat'

图片上传限制文件类型

//上传文件时对文件类型做一个验证 $("#myfile").on("change", function () { var a = document.getElementById("myfile").files[0].type.split("/"); if (a[0] != "image") { alert("必须是图片类型,否则不允许上传!"); window.location.hre

删除input上传的文件路径

上传文件时,选择了文件后想清空文件路径,搜索了一下,用两种方法解决 <input type="file" id="fileupload" name="file" /> 第一种: var obj = document.getElementById('fileupload') ; obj.select(); document.selection.clear(); 第二种: var obj = document.getElementById

史上最完全oophper php文件上传之文件类型对应表,ie,火狐各一份。

ie 火狐 id 后缀名 php识别出的文件类型 0 gif image/gif 1 jpg image/jpeg 2 png image/png 3 bmp image/bmp 4 psd application/octet-stream 5 ico image/x-icon 6 rar application/octet-stream 7 zip application/zip 8 7z application/octet-stream 9 exe application/octet-str

文件和打印的技巧-限制多文件上传的文件类型

—————————————————————— <script type="text/javascript">                    function chkform(){                //获取Dom                var mypic = document.forms[0].mypic;                for(var i = 0 ;i<mypic.files.length;i++){           

基于jquery读取input上传的文件内容

<script src="/static/js/jquery.js"></script> // 前端页面实现头像预览 // 当用户选中文件之后,也就是头像的input标签有值时触发 $('#avatar').change(function () { var file = this.files[0]; var fr = new FileReader(); fr.readAsDataURL(file); fr.onload = function(){ $('#ava

文件上传判断文件类型,(不用后缀判断)

/// <summary> /// 判断文件格式 /// http://www.cnblogs.com/babycool /// </summary> /// <param name="filePath"></param> /// <returns></returns> public static bool IsAllowedExtension(string filePath) { FileStream strea

如何让WordPress支持上传更多文件类型

可以在functions.php中这样写: 1 2 3 4 5 6 7 8 9 add_filter('upload_mimes', 'wpdit_filter_mime_types'); function wpdit_filter_mime_types($mimes) {     $mimes['ttf'] = 'font/ttf';     $mimes['woff'] = 'font/woff';     $mimes['svg'] = 'font/svg';     $mimes['eo