用 JavaScript 实现网页图片等比例缩放

在处理网页图片时,特别是一些图片列表的应用里面,很难保证图片统一大小,直接设置图片大小又会导致图片拉伸,造成图片模糊,本文介绍的代码可以在图片加载完成后自动按比例调整图片大小。


--------------------------------------------------------------
点此浏览示例文件
--------------------------------------------------------------


Javascript:

  
  1.  
  2. <script language="JavaScript" type="text/javascript">
  3. <!--
  4. // 说明:用 JavaScript 实现网页图片等比例缩放
  5. // 整理:http://www.CodeBit.cn
  6.  
  7. function DrawImage(ImgD,FitWidth,FitHeight){
  8. var image=new Image();
  9. image.src=ImgD.src;
  10. if(image.width>0 && image.height>0){
  11. if(image.width/image.height>= FitWidth/FitHeight){
  12. if(image.width>FitWidth){
  13. ImgD.width=FitWidth;
  14. ImgD.height=(image.height*FitWidth)/image.width;
  15. }else{
  16. ImgD.width=image.width;
  17. ImgD.height=image.height;
  18. }
  19. } else{
  20. if(image.height>FitHeight){
  21. ImgD.height=FitHeight;
  22. ImgD.width=(image.width*FitHeight)/image.height;
  23. }else{
  24. ImgD.width=image.width;
  25. ImgD.height=image.height;
  26. }
  27. }
  28. }
  29. }
  30. //-->
  31. </script>
  32.  




调用方式:
Code:


<img src="1148202890.jpg" alt="自动缩放后的效果" onload="javascript:DrawImage(this,200,200);" />





如果图片较大,建议在图片标签里面同时设置期望的图片大小,这样不会导致页面在加载中撑开,该大小不会影响最终缩放效果。可以修改上面的代码为:




Code:


<img src="1148202890.jpg" alt="自动缩放后的效果" width="200" height="200" onload="javascript:DrawImage(this,200,200);" />

你可能感兴趣的:(JavaScript)