图片区域大小是固定的,但图片的大小不是固定的。需要按照图片的比例来缩放。以下代码解决问题:
<!-- var flag=false; function limitImage(ImgD){ var areaWidth = 560; //你放置图片区域的宽度。 var areaHeight = 400; //你放置图片区域的高度。 var image=new Image(); image.src=ImgD.src; if(image.width>0 && image.height>0){ flag=true; if(image.width/image.height>= areaWidth/areaHeight){ if(image.width>areaWidth){ ImgD.width=areaWidth; ImgD.height=(image.height*areaWidth)/image.width; }else{ ImgD.width=image.width; ImgD.height=image.height; } ImgD.alt=image.width+"×"+image.height; }else{ if(image.height>areaHeight){ ImgD.height=areaHeight; ImgD.width=(image.width*areaHeight)/image.height; }else{ ImgD.width=image.width; ImgD.height=image.height; } ImgD.alt=image.width+"×"+image.height; } } } //--> <img src="xxxx" border="0" οnlοad="javascript:limitImage(this);" />
将JS中areaWidth/areaHeight设置为自己区域大小即可。