按比例自动缩放图片的大小

1、简单的按比例缩放图片:

    设置好图片的宽度,图片就会自动缩放高度。比如:<img src="http://img93.pp.sohu.com/images/blog/2006/10/21/17/7/10efe26831e.jpg" onload='javascript:if(this.width>180)this.width=180' alt="用户头像" />

或者:

if(width>164){
   imgObj.width=164;
   imgObj.height=imgObj.height/(imgObj.width/164);
 }

    缺点就是不能控制高度。

2、完全可控制的按比例缩放图片:

    function ResizeImage(obj, MaxW, MaxH) {

if (obj != null) imageObject = obj;

var state=imageObject.readyState;

if(state!='complete') {

setTimeout("ResizeImage(null,"+MaxW+","+MaxH+")",50);

return;

}

var oldImage = new Image();

oldImage.src = imageObject.src;

var dW=oldImage.width;

var dH=oldImage.height;

if(dW>MaxW || dH>MaxH)

{ a=dW/MaxW; b=dH/MaxH; if(b>a) a=b; dW=dW/a; dH=dH/a; }

if(dW > 0 && dH > 0)

{ imageObject.width=dW; imageObject.height=dH; }

}

    调用方法:<img oncontextmenu="return false;" id="photoImg" name="photoImg" src="images/images.gif" onclick="openPicWin(this.src)" onload="ResizeImage(this,400,253);">

    ResizeImage(this,400,253)调用中 this是图片的路径,400和253分别是自己设定的宽度和高度。如果宽度<400,高度<253,图片就显示原来的大小。相反如果图片宽度>400图片宽度就缩小到400,这个时候如果高度>253图片会继续按比例缩放,直到进入到400和253的范围之内。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值