Posted in Javascript onDecember 19, 2012
功能:
1.限制扩展名:只能jpg || jpg和gif
2.限制图片大小:K为单位
3.限制图片宽高:px为单位(要么都有,要么都无)
4.限制已经损坏的图片(没有预览的图片)
5.限制更改过扩展名的图片(比如强制把一个动态的GIF扩展名改为JPG了)
使用限制:
要在InputFile里增加onchange事件,使其选择文件后能在一个img标签里加载出来,否则使用会出错
imglimit.js
function limitImg(){ var img=document.getElementById(arguments[0]);//显示图片的对象 var maxSize=arguments[1];// var allowGIF=arguments[2]||false; var maxWidth=arguments[3]||0; var maxHeight=arguments[4]||0; var postfix=getPostfix(img.src); var str=".jpg"; if(allowGIF){str+=".gif"} if(str.indexOf(postfix.toLowerCase())==-1){ if(allowGIF){return "图片格式不对,只能上传jpg或gif图像";}else{return "图片格式不对,只能上传jpg图像";} }else if(img.fileSize>maxSize*1024){ return "图片大小超过限制,请限制在"+maxSize+"K以内"; }else{ if(img.fileSize==-1){ return "图片格式错误,可能是已经损坏或者更改扩展名导致,请重新选择一张图片"; }else{ if(maxWidth>0){ if(img.width>maxWidth){ return "图片宽度超过限制,请保持在"+maxWidth+"像素内"; }else{ if(img.height>maxHeight){ return "图片高度超过限制,请保持在"+maxHeight+"像素内"; }else{ return ""; } } }else{ return ""; } } } } //根据路径获取文件扩展名 function getPostfix(path){ return path.substring(path.lastIndexOf("."),path.length); }
页面调用:
<body> <input type="file" onchange="document.getElementById('img1').src=this.value;" /> <img id="img1" /> <input type="button" onclick="aa()" value="上传" /> </body> <mce:script type="text/javascript"><!-- function aa(){ if(limitImg('img1',100,false,1000,100)==""){ alert("图片上传成功"); }else{ alert(limitImg('img1',100,false,1000,100)); } } // --></mce:script>
JS上传图片前的限制包括(jpg jpg gif及大小高宽)等
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@