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 cookies 常见网页木马挂马代码 24小时只加载一次
Apr 13 Javascript
菜鸟javascript基础整理1
Dec 06 Javascript
Javascript Request获取请求参数如何实现
Nov 28 Javascript
javascript自然分类法算法实现代码
Oct 11 Javascript
jQuery事件绑定和委托实例
Nov 25 Javascript
Angularjs中UI Router全攻略
Jan 29 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
Jan 25 Javascript
深入浅析Vue中的slots/scoped slots
Apr 03 Javascript
在小程序/mpvue中使用flyio发起网络请求的方法
Sep 13 Javascript
JS如何实现手机端输入验证码效果
May 13 Javascript
vue radio单选框,获取当前项(每一项)的value值操作
Sep 10 Javascript
简单谈谈offsetleft、offsetTop和offsetParent
Dec 04 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
ThinkPHP缓存方法S()概述
2014/06/13 PHP
PHP 使用redis简单示例分享
2015/03/05 PHP
PHP中file_exists使用中遇到的问题小结
2016/04/05 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
用js遍历 table的脚本
2008/07/23 Javascript
Javascript异步表单提交,图片上传,兼容异步模拟ajax技术
2010/05/10 Javascript
js 编码转换 gb2312 和 utf8 互转的2种方法
2013/08/07 Javascript
jquery动态更换设置背景图的方法
2014/03/25 Javascript
javascript检测两个数组是否相似
2015/05/19 Javascript
js表单中选择框值的获取及表单的序列化
2015/12/17 Javascript
jQuery实现CheckBox全选、全不选功能
2017/01/11 Javascript
关于 angularJS的一些用法
2017/11/29 Javascript
几个你不知道的技巧助你写出更优雅的vue.js代码
2018/06/11 Javascript
Vue下拉框回显并默认选中随机问题
2018/09/06 Javascript
微信小程序授权登录及解密unionId出错的方法
2018/09/26 Javascript
为什么要使用Vuex的介绍
2019/01/19 Javascript
js实现的格式化数字和金额功能简单示例
2019/07/30 Javascript
vue实现点击按钮下载文件功能
2019/10/11 Javascript
基于JavaScript实现表格隔行换色
2020/05/08 Javascript
python实现简单温度转换的方法
2015/03/13 Python
python中bs4.BeautifulSoup的基本用法
2019/07/27 Python
opencv3/Python 稠密光流calcOpticalFlowFarneback详解
2019/12/11 Python
给Python学习者的文件读写指南(含基础与进阶)
2020/01/29 Python
Docker如何部署Python项目的实现详解
2020/10/26 Python
python判断all函数输出结果是否为true的方法
2020/12/03 Python
matplotlib对象拾取事件处理的实现
2021/01/14 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
针对HTML5的Web Worker使用攻略
2015/07/12 HTML / CSS
整理HTML5中支持的URL编码与字符编码
2016/02/23 HTML / CSS
PUMA澳大利亚官方网站:德国运动品牌
2018/10/19 全球购物
司法建议书范文
2014/05/13 职场文书
公司演讲稿开场白
2014/08/25 职场文书
基层党组织整改方案
2014/10/25 职场文书
新郎答谢词
2015/01/04 职场文书
JavaWeb 入门篇(3)ServletContext 详解 具体应用
2021/07/16 Java/Android
SpringBoot SpringEL表达式的使用
2021/07/25 Java/Android