热门:网页模板.net视频教程JQueryMVCjsonExtJs源码示例三级联动JQuery菜单
您现在的位置:.Net中文社区>> AJAX编程>>正文内容

JS实现等比例缩放图片

发布时间:2010年02月12日点击数: 佚名

在Web上显示图片,通常都会有图片显示比例问题,如果不给<img />限制width和height,那么如果图片大了就会将整个页面挤乱,图片小了又会使图片失真。
需求如下:
1、预先定义好图片显示的标准宽度和高度。
2、如果图片的大小超过了标准定义,那么等比例压缩图片。
3、如果图片的大小等于标准定义,那么按照标准宽度和高度显示图片。
4、如果图片的大小小于标准定义,那么不对图片进行任何压缩处理。
可能是我搜索的关键字不对吧,在网上找了很长时间,才找到,感觉很好使。

代码如下

  1. <script language="JavaScript"> 
  2. <!-- 
  3. //图片按比例缩放 
  4. var flag=false
  5. function DrawImage(ImgD,iwidth,iheight){ 
  6.     //参数(图片,允许的宽度,允许的高度) 
  7.     var image=new Image(); 
  8.     image.src=ImgD.src; 
  9.     if(image.width>0 && image.height>0){ 
  10.     flag=true
  11.     if(image.width/image.height>= iwidth/iheight){ 
  12.         if(image.width>iwidth){   
  13.         ImgD.width=iwidth
  14.         ImgD.height=(image.height*iwidth)/image.width; 
  15.         }else{ 
  16.         ImgD.width=image.width;   
  17.         ImgD.height=image.height; 
  18.         } 
  19.         ImgD.alt=image.width+"×"+image.height; 
  20.         } 
  21.     else{ 
  22.         if(image.height>iheight){   
  23.         ImgD.height=iheight
  24.         ImgD.width=(image.width*iheight)/image.height;         
  25.         }else{ 
  26.         ImgD.width=image.width;   
  27.         ImgD.height=image.height; 
  28.         } 
  29.         ImgD.alt=image.width+"×"+image.height; 
  30.         } 
  31.     } 
  32. }  
  33. //--> 
  34. </script> 
  35. 调用:<img src="images/toplogo.gif" onload="javascript:DrawImage(this,100,100)"> 

本站热点业务

更多模板/案例展示

关于我们 | 联系我们 | 团队日志 | 网站地图 | 网站合作