如何在IE7使用js在上传之前读取图片大小

如何在IE7使用js在上传之前读取图片大小,第1张

function check(){

var annex1 = documentgetElementById("fuJian1")value;

if(annex1!=null && annex1 != ""){

var annex1End = annex1substring(annex1lastIndexOf(''),annex1length);

if(annex1EndtoUpperCase()!='GIF' && annex1EndtoUpperCase()!='JPG' && annex1EndtoUpperCase()!='JPEG' && annex1EndtoUpperCase()!='BMP'){

alert("只能上传格式为(gif/jpg/jpeg/bmp)的!");

return false;

}else{

var img = documentcreateElement("img");

imgsrc = annex1;

if(imgfileSize>204800){

alert("尺寸请不要大于20K!");

return false;

}

}

}

}

getBounds获取宽高。

setBounds设置宽高,或者scaleX,scaleY设置宽高的缩放。

>

这种情况用CSS来控制最合适。例如你想让初始显示为100px100px,则:

<img src="images/picpng" width="100" height="100" />

或者:

<img src="images/picpng" style="width:100px; height:100px" />

当页面中非常多,且要求每张的大小依据其父容器来固定怎么办?可以使用max-weight:

img {max-weight:100%;}

这样会自动缩放到和其父容器等宽。

获得文件大小大概有两种解决方法:

(一)使用documentgetElementById或者documentcreateElement的或者var img=new Image();

然后在onreadystatechange事件里检查大小

但这种代码通用性不强浏览器兼容存在问题一直无法解决

(二)使用FSO控件,但这样存在安全问题

<div id="photoyn"><input id="file1" type="file" onchange="ShowSize(thisvalue)" />

<script type="text/javascript">

function ShowSize(files){

var fso,f;

fso=new ActiveXObject("ScriptingFileSystemObject");

f=fsoGetFile(files);

var mySize = fsize/1024;

alert(mySize+" K ");

var myName = fName;

var myPath = fPath;

var myDrive = fDrive;

var myType = ftype;

var myAttributes = fAttributes;

var myDateCreated = fDateCreated;

}

</script>

所以说要在客户端检测文件大小没有实现方法。

最终解决方案还是在服务器端检测,在上传的过程中,在服务器的内存中进行判断并返回信息给客户端。

HTML 中input标签有个类型是file。这个是可以上传文件使用的。你可以直接 *** 作这个标签的size来获取文件的大小。

可通过下面的方式 

html代码:js代码:

var fileId = "uploadtest";

var dom = documentgetElementById(fileId);  

var fileSize =  domfiles[0]size;//文件的大小,单位为字节B

代码大致如下供参考:

var image=new Image();

imagesrc=//你的背景的src;

var divelement = documentgetElementById(你的div的id);

divelementstyleheight=(imageheightdivelementoffsetWidth)/imagewidth + "px";

几个需要注意的地方是imagesrc=xxx后需要等待直到下载完成。但是如果这个脚本是在你的div已经初始化好之后调用的话,那么已经被下载过了,所以直接进行后面的就好。另外以styleheight来设置高度的话后面需要加单位,比如px

以上就是关于如何在IE7使用js在上传之前读取图片大小全部的内容,包括:如何在IE7使用js在上传之前读取图片大小、createjs,easeljs 如何获取图片的宽度和设置图片宽高、用js设置图片宽度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10162767.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存