惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
SegmentFault 最新的问题
Jina AI
Jina AI
罗磊的独立博客
V
Visual Studio Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
J
Java Code Geeks
U
Unit 42
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog RSS Feed
爱范儿
爱范儿
酷 壳 – CoolShell
酷 壳 – CoolShell
Last Week in AI
Last Week in AI
T
The Blog of Author Tim Ferriss
腾讯CDC
Hugging Face - Blog
Hugging Face - Blog
T
Tailwind CSS Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
I
InfoQ
月光博客
月光博客
博客园_首页
Vercel News
Vercel News
P
Proofpoint News Feed
GbyAI
GbyAI
Y
Y Combinator Blog

博客园 - Sunlight

物化视图每天自动刷新2次的方法 Eclipse保存验证JS缓慢 Eclipse去除js错误 jquery动态添加删除行 收藏网址 Eclipse 修改项目名称 SQL 实现返回一个字段中,某个字符出现的次数 Oracle DIV/CSS 实现三列,左右两列固定,中间一列自适应 PowerDesigner15 操作记录 使用gzip优化web应用(filter实现) 增强我们的Visual Studio .Net 热调试 Axis 客户端调用 javascritp对fckeditor编辑器操作 - Sunlight - 博客园 Spring中任务调度cronExpression配置说明 - Sunlight - 博客园 基于 Axis 的WebService接口 SQL查询Excel 漂亮的按钮样式 分析函数RANK的使用
用 JavaScript 实现网页图片等比例缩放
Sunlight · 2009-06-26 · via 博客园 - Sunlight

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

<!-- // 说明:用 JavaScript 实现网页图片等比例缩放
function DrawImage(ImgD,FitWidth,FitHeight)
{
 var image=new Image();
 image.src=ImgD.src;
 if(image.width>0 && image.height>0){
  if(image.width/image.height>= FitWidth/FitHeight){
   if(image.width>FitWidth){
    ImgD.width=FitWidth;
    ImgD.height=(image.height*FitWidth)/image.width;
   }else{
    ImgD.width=image.width;
    ImgD.height=image.height;
   }
  } else{
   if(image.height>FitHeight){
    ImgD.height=FitHeight;
    ImgD.width=(image.width*FitHeight)/image.height;
   }else{
    ImgD.width=image.width;
                ImgD.height=image.height;
   }
  }
 }
}

调用方式:
调用方式:
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);" />