JavaScript实现网页图片等比例缩放实现代码及调用方式


Posted in Javascript onFebruary 25, 2013

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

< script language="javascript" type="text/javascript"> 
< !-- 
// 说明:用 JavaScript 实现网页图片等比例缩放 
// 整理:http://www.CodeBit.cn 
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; 
} 
} 
} 
} 
//--> 
< script>

调用方式:
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 相关文章推荐
js判断变量是否空值的代码
Oct 26 Javascript
Firefox div高度自适应
Apr 28 Javascript
基于jquery固定于顶部的导航响应浏览器滚动条事件
Nov 02 Javascript
jQuery中index()方法用法实例
Dec 27 Javascript
js实现文本框选中的方法
May 26 Javascript
Node.js编写组件的三种实现方式
Feb 25 Javascript
Jquery与Bootstrap实现后台管理页面增删改查功能示例
Jan 22 Javascript
js实现鼠标移动到图片产生遮罩效果
Oct 21 Javascript
微信小程序获取手机网络状态的方法【附源码下载】
Dec 08 Javascript
分享5个顶级的JavaScript Ajax组件库
Sep 16 Javascript
vue src动态加载请求获取图片的方法
Oct 17 Javascript
JavaScript 类的封装操作示例详解
May 16 Javascript
30分钟就入门的正则表达式基础教程
Feb 25 #Javascript
js根据给定的日期计算当月有多少天实现思路及代码
Feb 25 #Javascript
Jquery实现仿新浪微博获取文本框能输入的字数代码
Feb 22 #Javascript
IE的fireEvent方法概述及应用
Feb 22 #Javascript
js取得url地址参数实例
Feb 22 #Javascript
js模拟滚动条(横向竖向)
Feb 22 #Javascript
js时间日期和毫秒的相互转换
Feb 22 #Javascript
You might like
php导入导出excel实例
2013/10/25 PHP
PHP实现抓取Google IP并自动修改hosts文件
2015/02/12 PHP
php获取网站根目录物理路径的几种方法(推荐)
2017/03/04 PHP
php实现多维数组排序的方法示例
2017/03/23 PHP
PHP实现动态创建XML文档的方法
2018/03/30 PHP
PHP命令Command模式用法实例分析
2018/08/08 PHP
PHP+MySql实现一个简单的留言板
2020/07/19 PHP
Jquery下的26个实用小技巧(jQuery tips, tricks &amp; solutions)
2010/03/01 Javascript
前台js改变Session的值(用ajax实现)
2012/12/28 Javascript
给应用部分的js代码设定一个统一的入口
2014/06/15 Javascript
Javascript通过overflow控制列表闭合与展开的方法
2015/05/15 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
JavaScript正则表达式匹配 div  style标签
2016/03/15 Javascript
javascript实现去除HTML标签的方法
2016/12/26 Javascript
jQuery Form表单取值的方法
2017/01/11 Javascript
原生JS实现 MUI导航栏透明渐变效果
2017/11/07 Javascript
JS实现放烟花效果
2020/03/10 Javascript
用JS实现选项卡
2020/03/23 Javascript
Python基础入门之seed()方法的使用
2015/05/15 Python
Python对数据库操作
2016/03/28 Python
小小聊天室Python代码实现
2016/08/17 Python
python爬虫入门教程--优雅的HTTP库requests(二)
2017/05/25 Python
pygame实现弹力球及其变速效果
2017/07/03 Python
Python callable()函数用法实例分析
2018/03/17 Python
python如何提取英语pdf内容并翻译
2020/03/03 Python
Kmeans均值聚类算法原理以及Python如何实现
2020/09/26 Python
html5 worker 实例(一) 为什么测试不到效果
2013/06/24 HTML / CSS
布里斯班女装时尚品牌:Adrift
2017/12/28 全球购物
Maxpeedingrods美国:高性能汽车零件
2020/02/14 全球购物
计算机学生的自我评价分享
2014/02/18 职场文书
高中军训感言400字
2014/02/24 职场文书
大学生会计职业生涯规划范文
2014/02/28 职场文书
学习退步检讨书
2014/09/28 职场文书
python 如何执行控制台命令与操作剪切板
2021/05/20 Python
详解Python+OpenCV绘制灰度直方图
2022/03/22 Python
ICOM R71E和R72E图文对比解说
2022/04/07 无线电