JS等比例缩小图片尺寸的实例


Posted in Javascript onFebruary 27, 2013

为了提升用户体验,网站用户在上传图片的时候,我们不能够让用户自己去处理图片以达到我们的要求。

而通常像淘宝上商品实物展示这样的页面,我们需要控制的主要是图片的宽度。

又考虑到html页面解析顺序可能导致的一些问题,决定通过定义一个简单的功能函数,然后在img元素中添加onload事件来调用的方式进行实现,代码如下:

JS部分

<script type="text/javascript">
 function changeImg(objImg)
 {
     var most = 690;        //设置最大宽度
     if(objImg.width > most)
     {
         var scaling = 1-(objImg.width-most)/objImg.width;    
         //计算缩小比例
         objImg.width = objImg.width*scaling;
         objImg.height = objImg.height;            //img元素没有设置高度时将自动等比例缩小         //objImg.height = objImg.height*scaling;    //img元素设置高度时需进行等比例缩小
     }
 }
 </script>

HTML调用部分

 <img src="" onload="changeImg(this);" />
Javascript 相关文章推荐
jQuery JSON的解析方式分享
Apr 05 Javascript
JavaScript 32位整型无符号操作示例
Dec 08 Javascript
JavaScript设置表单上传时文件个数的方法
Aug 11 Javascript
在jQuery中使用$而避免跟其它库产生冲突的方法
Aug 13 Javascript
分享自己用JS做的扫雷小游戏
Feb 17 Javascript
javascript中错误使用var造成undefined
Mar 31 Javascript
Function.prototype.apply()与Function.prototype.call()小结
Apr 27 Javascript
Vue form 表单提交+ajax异步请求+分页效果
Apr 22 Javascript
angular中的cookie读写方法
Aug 02 Javascript
微信小程序车牌号码模拟键盘输入功能的实现代码
Nov 11 Javascript
基于three.js实现的3D粒子动效实例代码
Apr 09 Javascript
JavaScript 预解析的4种实现方法解析
Sep 03 Javascript
JQuery切换显示的效果实例代码
Feb 27 #Javascript
innerText和textContent对比及使用介绍
Feb 27 #Javascript
根据IP的地址,区分不同的地区,查看不同的网站页面的js代码
Feb 26 #Javascript
jQuery easyui datagrid动态查询数据实例讲解
Feb 26 #Javascript
jQuery建立一个按字母顺序排列的友好页面索引(兼容IE6/7/8)
Feb 26 #Javascript
jquery创建一个ajax关键词数据搜索实现思路
Feb 26 #Javascript
jQuery创建平滑的页面滚动(顶部或底部)
Feb 26 #Javascript
You might like
一个用于MySQL的PHP XML类
2006/10/09 PHP
解析PHP中的unset究竟会不会释放内存
2013/07/18 PHP
PHP异常处理浅析
2015/05/12 PHP
PHP与Ajax相结合实现登录验证小Demo
2016/03/16 PHP
PHP微信公众号自动发送红包API
2016/06/01 PHP
PHP curl 或 file_get_contents 获取需要授权页面的方法
2017/05/05 PHP
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
2017/09/02 PHP
PHP实现简单登录界面
2019/10/23 PHP
JQuery 图片延迟加载并等比缩放插件
2009/11/09 Javascript
onbeforeunload与onunload事件异同点总结
2013/06/24 Javascript
关于extjs4如何获取grid修改后的数据的问题
2013/08/07 Javascript
jQuery遍历Table应用示例
2014/04/09 Javascript
简介JavaScript中search()方法的使用
2015/06/06 Javascript
jQuery插件zTree实现获取当前选中节点在同级节点中序号的方法
2017/03/08 Javascript
Javascript实现信息滚动效果
2017/05/18 Javascript
Node.js环境下Koa2添加travis ci持续集成工具的方法
2017/06/19 Javascript
关于使用js算总价的问题
2017/06/23 Javascript
在vue中安装使用vux的教程详解
2018/09/16 Javascript
如何使用CSS3+JQuery实现悬浮墙式菜单
2019/06/18 jQuery
详解package.json版本号规则
2019/08/01 Javascript
Vue防止白屏添加首屏动画的实例
2019/10/31 Javascript
Python元组拆包和具名元组解析实例详解
2018/03/26 Python
python 实现方阵的对角线遍历示例
2019/11/29 Python
python二维键值数组生成转json的例子
2019/12/06 Python
Pytorch 使用CNN图像分类的实现
2020/06/16 Python
英国首屈一指的票务公司:See Tickets
2019/05/11 全球购物
eBay美国官网:eBay.com
2020/10/24 全球购物
3个CCIE对一个工程师的面试题
2012/05/06 面试题
2013年保送生自荐信格式
2013/11/20 职场文书
合作意向协议书范本
2014/03/31 职场文书
2014年党的群众路线教育实践活动总结
2014/04/25 职场文书
乡镇精神文明建设汇报材料
2014/08/15 职场文书
银行业务授权委托书
2014/10/10 职场文书
2015年财务科工作总结范文
2015/05/13 职场文书
小学语文教师研修感悟
2015/11/18 职场文书
高一英语教学反思
2016/03/03 职场文书