JS 파일 크기 판단 실현 코드
<br>function getFileSize(filePath)
<br>{
<br>var fso = new ActiveXObject("Scripting.FileSystemObject");
<br>alert(" :"+fso.GetFile(filePath).size);
<br>}
<br>
이 방법 은 IE 에서 사용 할 수 있 습 니 다. 부족 한 점 은 안전 알림 이 있 습 니 다. 파일 이름 을 'hta' 로 바 꾸 면 안전 알림 을 차단 합 니 다.
방법 2, img 의 dynsrc 속성 이용:
<br>function getFileSize(filePath)
<br>{
<br>var image=new Image();
<br>image.dynsrc=filePath;
<br>alert(image.fileSize);
<br>}
<br>
이 방법 은 IE6 에서 사용 할 수 있 으 며 IE7, IE8, Firefox, chrome 에 서 는 사용 할 수 없습니다.
방법 3, img 의 fileSize 를 이용 하여:
<br>var ImgObj=new Image(); //
<br>var AllImgExt=".jpg|.jpeg|.gif|.bmp|.png|"//
<br>var FileObj,ImgFileSize,ImgWidth,ImgHeight,FileExt,ErrMsg,FileMsg,HasCheked,IsImg//
<br>//
<br>var AllowExt=".jpg|.gif|.doc|.txt|" // ? "|"
<br>//var AllowExt=0
<br>var AllowImgFileSize=70; // 0 :KB
<br>var AllowImgWidth=500; // ? :px( )
<br>var AllowImgHeight=500; // ? :px( )
<br>HasChecked=false;
<br>function CheckProperty(obj) //
<br>{
<br>FileObj=obj;
<br>if(ErrMsg!="") //
<br>{
<br>ShowMsg(ErrMsg,false);
<br>return false; //
<br>}
<br>if(ImgObj.readyState!="complete") //
<br>{
<br>setTimeout("CheckProperty(FileObj)",500);
<br>return false;
<br>}
<br>ImgFileSize=Math.round(ImgObj.fileSize/1024*100)/100;//
<br>ImgWidth=ImgObj.width //
<br>ImgHeight=ImgObj.height; //
<br>FileMsg="
:"+ImgWidth+"*"+ImgHeight+"px";
<br>FileMsg=FileMsg+"
:"+ImgFileSize+"Kb";
<br>FileMsg=FileMsg+"
:"+FileExt;
<br>if(AllowImgWidth!=0&&AllowImgWidth<ImgWidth)
<br>ErrMsg=ErrMsg+"
。 "+AllowImgWidth+"px , "+ImgWidth+"px";
<br>if(AllowImgHeight!=0&&AllowImgHeight<ImgHeight)
<br>ErrMsg=ErrMsg+"
。 "+AllowImgHeight+"px , "+ImgHeight+"px";
<br>if(AllowImgFileSize!=0&&AllowImgFileSize<ImgFileSize)
<br>ErrMsg=ErrMsg+"
。 "+AllowImgFileSize+"KB , "+ImgFileSize+"KB";
<br>if(ErrMsg!="")
<br>ShowMsg(ErrMsg,false);
<br>else
<br>ShowMsg(FileMsg,true);
<br>}
<br>ImgObj.onerror=function(){ErrMsg='
!'}
<br>function ShowMsg(msg,tf) // tf=true tf=false msg-
<br>{
<br>msg=msg.replace("
","<li>");
<br>msg=msg.replace(/
/gi,"<li>");
<br>if(!tf)
<br>{
<br>document.all.UploadButton.disabled=true;
<br>FileObj.outerHTML=FileObj.outerHTML;
<br>MsgList.innerHTML=msg;
<br>HasChecked=false;
<br>}
<br>else
<br>{
<br>document.all.UploadButton.disabled=false;
<br>if(IsImg)
<br>PreviewImg.innerHTML="<img src='"+ImgObj.src+"' width='60' height='60'>"
<br>else
<br>PreviewImg.innerHTML=" ";
<br>MsgList.innerHTML=msg;
<br>HasChecked=true;
<br>}
<br>}
<br>function CheckExt(obj)
<br>{
<br>ErrMsg="";
<br>FileMsg="";
<br>FileObj=obj;
<br>IsImg=false;
<br>HasChecked=false;
<br>PreviewImg.innerHTML=" ";
<br>if(obj.value=="")return false;
<br>MsgList.innerHTML=" ...";
<br>document.all.UploadButton.disabled=true;
<br>FileExt=obj.value.substr(obj.value.lastIndexOf(".")).toLowerCase();
<br>if(AllowExt!=0&&AllowExt.indexOf(FileExt+"|")==-1) //
<br>{
<br>ErrMsg="
。 "+AllowExt+" , "+FileExt;
<br>ShowMsg(ErrMsg,false);
<br>return false;
<br>}
<br>if(AllImgExt.indexOf(FileExt+"|")!=-1) // ,
<br>{
<br>IsImg=true;
<br>ImgObj.src=obj.value;
<br>CheckProperty(obj);
<br>return false;
<br>}
<br>else
<br>{
<br>FileMsg="
:"+FileExt;
<br>ShowMsg(FileMsg,true);
<br>}
<br>}
<br>function SwitchUpType(tf)
<br>{
<br>if(tf)
<br>str='<input type="file" name="file1" onchange="CheckExt(this)" style="width:180px;">'
<br>else
<br>str='<input type="text" name="file1" onblur="CheckExt(this)" style="width:180px;">'
<br>document.all.file1.outerHTML=str;
<br>document.all.UploadButton.disabled=true;
<br>MsgList.innerHTML="";
<br>}
<br>
IE, FireFox, chrome 은 모두 사용 할 수 있 지만 그림 파일 의 크기 만 판단 할 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.