js 控制图片大小核心讲解


Posted in Javascript onOctober 09, 2013

缩放图片脚本分享

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title> New Document </title> 
<meta name="Generator" content="EditPlus"> 
<meta name="Author" content=""> 
<meta name="Keywords" content=""> 
<meta name="Description" content=""> <script> 
function AutoResizeImage(maxWidth,maxHeight){ 
var objImg = document.getElementById("operImg"); 
var img = new Image(); 
img.src = objImg.src; 
var hRatio; 
var wRatio; 
var Ratio = 1; 
var w = img.width; 
var h = img.height; 
wRatio = maxWidth / w; 
hRatio = maxHeight / h; 
if (maxWidth ==0 && maxHeight==0){ 
Ratio = 1; 
}else if (maxWidth==0){// 
if (hRatio<1) Ratio = hRatio; 
}else if (maxHeight==0){ 
if (wRatio<1) Ratio = wRatio; 
}else if (wRatio<1 || hRatio<1){ 
Ratio = (wRatio<=hRatio?wRatio:hRatio); 
} 
if (Ratio<1){ 
w = w * Ratio; 
h = h * Ratio; 
} 
objImg.height = h; 
objImg.width = w; 
} 
</script> 
</head> 
<body> 
<img src="1111.jpg" border="0" alt="534 X 800" id="operImg"/> 
<input type="button" value="缩放至宽100px,等比例压缩" onclick="AutoResizeImage(100,0)"/> 
<input type="button" value="缩放至300px,等比例压缩" onclick="AutoResizeImage(300,0)"/> 
<input type="button" value="原图" onclick="AutoResizeImage(0,0)"/> 
</body> 
</html>

重点js:
function AutoResizeImage(maxWidth,maxHeight){ 
var objImg = document.getElementById("operImg"); 
var img = new Image(); 
img.src = objImg.src; 
var hRatio; 
var wRatio; 
var Ratio = 1; 
var w = img.width; 
var h = img.height; 
wRatio = maxWidth / w; 
hRatio = maxHeight / h; 
if (maxWidth ==0 && maxHeight==0){ 
Ratio = 1; 
}else if (maxWidth==0){// 
if (hRatio<1) Ratio = hRatio; 
}else if (maxHeight==0){ 
if (wRatio<1) Ratio = wRatio; 
}else if (wRatio<1 || hRatio<1){ 
Ratio = (wRatio<=hRatio?wRatio:hRatio); 
} 
if (Ratio<1){ 
w = w * Ratio; 
h = h * Ratio; 
} 
objImg.height = h; 
objImg.width = w; 
}
Javascript 相关文章推荐
总结AJAX相关JS代码片段和浏览器模型
Aug 15 Javascript
JQuery Tips(4) 一些关于提高JQuery性能的Tips
Dec 19 Javascript
有关js的变量作用域和this指针的讨论
Dec 16 Javascript
JS修改css样式style浅谈
May 06 Javascript
jquery获得option的值和对option进行操作
Dec 13 Javascript
jquery小火箭返回顶部代码分享
Aug 19 Javascript
VUEJS实战之修复错误并且美化时间(2)
Jun 13 Javascript
js读取json文件片段中的数据实例
Mar 09 Javascript
浅谈Angular2 模块懒加载的方法
Oct 04 Javascript
Webpack4+Babel7+ES6兼容IE8的实现
Apr 10 Javascript
JavaScript中callee和caller的区别与用法实例分析
Jun 28 Javascript
js实现div色块碰撞
Jan 16 Javascript
方便实用的jQuery checkbox复选框全选功能简单实例
Oct 09 #Javascript
自己编写的类似JS的trim方法
Oct 09 #Javascript
jquery()函数的三种语法介绍
Oct 09 #Javascript
javascript禁用键盘功能键让右击及其他键无效
Oct 09 #Javascript
jquery右下角弹出提示框示例代码
Oct 08 #Javascript
让复选框只能选择一项的方法
Oct 08 #Javascript
js中的push和join方法使用介绍
Oct 08 #Javascript
You might like
基于文本的访客签到簿
2006/10/09 PHP
Nginx实现反向代理
2017/09/20 Servers
php7 图形用户界面GUI 开发示例
2020/02/22 PHP
url 编码 js url传参中文乱码解决方案
2010/04/11 Javascript
基于JQuery的抓取博客园首页RSS的代码
2011/12/01 Javascript
js获取单选框或复选框值及操作
2012/12/18 Javascript
JQuery筛选器全系列介绍
2013/08/27 Javascript
jQuery幻灯片带缩略图轮播效果代码分享
2015/08/17 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
BootStrap无限级分类(无限极分类封装版)
2016/08/26 Javascript
JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)
2016/12/14 Javascript
js实现的xml对象转json功能示例
2016/12/24 Javascript
vue-router跳转页面的方法
2017/02/09 Javascript
thinkphp标签实现bootsrtap轮播carousel实例代码
2017/02/19 Javascript
JavaScript使用Math.random()生成简单的验证码
2019/01/21 Javascript
IE浏览器下JS脚本提交表单后,不能自动提示问题解决方法
2019/06/04 Javascript
Js实现复选框的全选、全不选反选功能代码实例
2020/02/28 Javascript
vant 自定义 van-dropdown-item的用法
2020/08/05 Javascript
vue实现选中效果
2020/10/07 Javascript
javascript中导出与导入实现模块化管理教程
2020/12/03 Javascript
javascript实现滚轮轮播图片
2020/12/13 Javascript
flask使用session保存登录状态及拦截未登录请求代码
2018/01/19 Python
Python复制Word内容并使用格式设字体与大小实例代码
2018/01/22 Python
Python实现的爬虫刷回复功能示例
2018/06/07 Python
python3.6编写的单元测试示例
2019/08/17 Python
python实现多线程端口扫描
2019/08/31 Python
Python JSON编解码方式原理详解
2020/01/20 Python
python适合做数据挖掘吗
2020/06/16 Python
python 如何用urllib与服务端交互(发送和接收数据)
2021/03/04 Python
HTML5拍照和摄像机功能实战详解
2019/01/24 HTML / CSS
一些Unix笔试题和面试题
2012/09/25 面试题
机械设计职业生涯规划书
2013/12/27 职场文书
地理信息科学专业推荐信
2014/09/08 职场文书
2015年护士工作总结范文
2015/03/31 职场文书
给校长的建议书作文500字
2015/09/14 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server