楼主的方法不能保证按图片的原始比例的,用比例最好。例如if( this.width/this.height > 400/300 ){ this.width=90 }else{ this.height=90 }但还有一个问题要注意,就是图片未onload时,当图片尺寸很大时,就会先撑大页面,onload后才会适应尺寸,所以最好就是先统一给所有图片定一个CSS设置最大宽度和最大高度先,然后onload时再改变。

解决方案 »

  1.   

    <style>
    div.imgbox {width:400px;height:300px;}
    div.imgbox img {width:100%;height:100%;}
    </style><div class="imgbox">
    <img src="http://www.cnbm.net.cn/images/org/184_org_2005913135214.jpg">
    </div>唉,这样只能实现一半。
      

  2.   

    首先对以前的回答者表示感谢.
    下面我把问题再补充一下:在firefox下是每刷新一下页面,图片先按原始尺寸大小显示,再按缩小的尺寸显示.但是在IE6下,有时候刷新一下它是先按原始尺寸大小显示,再按缩小的尺寸显示;有时候只能按原始的尺寸显示.
    不知道这是怎么一回事情.
    ie6的哪个特性导致了这个问题?请教.
      

  3.   

    onload只能运行一次,再次刷新时用的就是缓存了,也就没有load了,有的图片是这样,有的还是,可能还跟路径什么的有关吧。