首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

【小弟我是初学者】真不知道是哪里出了错,谁帮忙解决一下

2012-02-17 
【我是菜鸟】真不知道是哪里出了错,哪位高手帮忙解决一下!上传图片的问题JScript codefunction filechang(){

【我是菜鸟】真不知道是哪里出了错,哪位高手帮忙解决一下!
上传图片的问题

JScript code
function filechang()        {                        var oFileChecker = document.all("loadImg");             var file=document.all("file1");            if(file.value!="")            {                str= file.value;                strs=str.toLowerCase();                lens=strs.length;                extname=strs.substring(lens-4,lens);                oFileChecker.Width=0;                oFileChecker.Height=0;                alert("宽度:"+oFileChecker.offsetWidth+"高度:"+oFileChecker.offsetHeight);                if(oFileChecker.offsetWidth<=176 && oFileChecker.offsetHeight<=178 && extname==".jpg")                {                    alert("通过!");                   return false;                }                else                {                    alert("请选择176×178大小的JPG格式文件!");                    return false;                  }            }            else            {                alert("请选择要上传的文件!");                return false;            }        }


页面加载后第一次上传图片时,第一次用offsetWidth,offsetHeight检测的是图片控件最原始的尺寸,根本检测不到上传图片的真实大小。这要怎么解决啊?

[解决办法]
JS要取图片的像素尺寸,最好的方法就是用var o=new image(),然后读o.width和o.height,但当图片还没完全载入时,这个o.width和o.height就会为0,所以还要加判断,用o.onload或者用setTimeout去执行判断。这是目前我所知道JS取图片尺寸最准确的方法。

热点排行
Bad Request.