jquery怎样限制上传图片的大小和像素宽高,分辨率

电子照片1200像素(宽)×1600像素(高),分辨率300dpi,照片大小不超过2M;网上的这个不好用,直接卡死while(true){if(img.fileSize>... 电子照片1200像素(宽)×1600像素(高),分辨率300dpi,照片大小不超过2M;
网上的这个不好用,直接卡死while(true){
if(img.fileSize>0){
if(img.fileSize>3*1024){
alert("图片不大于300KB。"); //检测允许的上传文件大小
return false;
}
break;
}
展开
 我来答
匿名用户
推荐于2016-04-12
展开全部
<script type="text/javascript"> 
function validate_img(a){
 var file = a.value;
 if(!/.(gif|jpg|jpeg|png|GIF|JPG|png)$/.test(file)){
  alert("图片类型必须是.gif,jpeg,jpg,png中的一种");
  return false;
}else{
     var image = new Image();
     image.src = file;
     var height = image.height;
     var width = image.width;
     var filesize = image.filesize;
  alert(height+"x.."+filesize);
     if(width>80 && height>80 && filesize>102400){
      alert('请上传80*80像素 或者大小小于100k的图片');
  return false;
     }
 }
 alert("图片通过");
}
</script> 
图像:<input type="file" name="uploadImg" onchange="Javascript:validate_img(this);" size="12"/>

测试的时候放服务器上测试,本地不行的哈~

追问
我在本地测试高,宽都是0,为什么在服务器上才行呢?
追答
因为JS是没有权限读取修改本地文件的。只有在服务器上通过url 下载到图片才能读取到图片的宽高大小。简单来说js要或者图片宽高是一定会在图片在服务器上下载完后才能获得
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式