- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會(huì )理事單位
- 安全聯(lián)盟認證網(wǎng)站身份V標記
- 域名注冊服務(wù)機構許可:滇D3-20230001
- 代理域名注冊服務(wù)機構:新網(wǎng)數碼
這里我們找了一個(gè)簡(jiǎn)單的JS上傳圖片前的限制包括(jpg jpg gif及大小高寬)等的代碼:
功能:
1.限制擴展名:只能jpg || jpg和gif
2.限制圖片大?。篕為單位
3.限制圖片寬高:px為單位(要么都有,要么都無(wú))
4.限制已經(jīng)損壞的圖片(沒(méi)有預覽的圖片)
5.限制更改過(guò)擴展名的圖片(比如強制把一個(gè)動(dòng)態(tài)的GIF擴展名改為JPG了)
使用限制:
要在InputFile里增加onchange事件,使其選擇文件后能在一個(gè)img標簽里加載出來(lái),否則使用會(huì )出錯
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 "圖片大小超過(guò)限制,請限制在"+maxSize+"K以?xún)?quot;; }else{ if(img.fileSize==-1){ return "圖片格式錯誤,可能是已經(jīng)損壞或者更改擴展名導致,請重新選擇一張圖片"; }else{ if(maxWidth>0){ if(img.width>maxWidth){ return "圖片寬度超過(guò)限制,請保持在"+maxWidth+"像素內"; }else{ if(img.height>maxHeight){ return "圖片高度超過(guò)限制,請保持在"+maxHeight+"像素內"; }else{ return ""; } } }else{ return ""; } } } } //根據路徑獲取文件擴展名 function getPostfix(path){ return path.substring(path.lastIndexOf("."),path.length); }
頁(yè)面調用:
<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>
從中我們可以找到這樣一段if(img.fileSize>maxSize*1024) 啊這里就是對上傳圖片進(jìn)行的大小判斷。
安裝這樣思路我們在處理在JS里面的上傳限制的時(shí)候可以通過(guò)搜索.fileSize這樣的關(guān)鍵詞來(lái)找到我們的大小修改地方。
售前咨詢(xún)
售后咨詢(xún)
備案咨詢(xún)
二維碼
TOP