offsetWidth是控件的外观尺寸!!

解决方案 »

  1.   

    有点误会,,
    我是在调用这个函数之前就把图片赋给了IMAGE控件,
    取offsetWidth,offsetHeight值,是IMAGE控件的值,并不是文件的大小
      

  2.   

    这段代码是网上找的但是只能在ie下运行而且不够安全,建议将这一功能放到服务器段去做,就象一些邮箱网站那样
    <Html>  
    <input type="file" name="file1" onchange="ShowSize(this.value)">  
    <script language="javascript">  
    <!--  
    function ShowSize(files)  
    {  
      var fso,f;  
      fso=new ActiveXObject("Scripting.FileSystemObject");  
      f=fso.GetFile(files);  
      alert(f.size+" Bytes");  
    }  
    //-->  
    </script>  
    </html> 
      

  3.   

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

  4.   

    多谢nicholsky !你说的方法解决了我的问题