jquery实现页面图片等比例放大缩小功能


Posted in Javascript onFebruary 12, 2014

html代码结构:

<a href=""><img src="images/tmp_376x470.jpg" width="300" height="300" alt=""/></a>
<a href=""><img src="images/tmp_409x265.jpg" width="300" height="300" alt=""/></a>
<a href=""><img src="images/tmp_572x367.jpg" width="300" height="300" alt=""/></a>

样式:

a{width:300px;height:300px;background:#fff;border:1px solid #666;display:inline-block} /* 这里需要指定a标签的高宽,背景和边框为可选 */
脚本(jquery可自行添加):
$(function () {
    var imgs = $('a>img');
    imgs.each(function () {
        var img = $(this);
        var width = img.attr('width');//区域宽度
        var height = img.attr('height');//区域高度
        var showWidth = width;//最终显示宽度
        var showHeight = height;//最终显示高度
        var ratio = width / height;//宽高比
        img.load(function () {
            var imgWidth, imgHeight, imgratio;
            $('<img />').attr('src', img.attr('src')).load(function () {
                imgWidth = this.width;//图片实际宽度
                imgHeight = this.height;//图片实际高度
                imgRatio = imgWidth / imgHeight;//实际宽高比
                if (ratio > imgRatio) {
                    showWidth = height * imgRatio;//调整宽度太小
                    img.attr('width', showWidth).css('margin-left', (width - showWidth) / 2);
                } else {
                    showHeight = width / imgRatio;//调高度太小
                    img.attr('height', showHeight).css('margin-top', (height - showHeight) / 2);
                }
            });
        });
    });
});

这样就是实现了图片的等比例放大缩小了。

Javascript 相关文章推荐
jQuery拖动div、移动div、弹出层实现原理及示例
Apr 08 Javascript
javascript实现简单的鼠标拖动效果实例
Apr 10 Javascript
Javascript中String的常用方法实例分析
Jun 13 Javascript
javascript伸缩菜单栏实现代码分享
Nov 12 Javascript
Jquery中巧用Ajax的beforeSend方法
Jan 20 Javascript
原生JavaScript编写canvas版的连连看游戏
May 29 Javascript
深入理解Angular2 模板语法
Aug 07 Javascript
JavaScript仿百度图片浏览效果
Nov 23 Javascript
解决html-jquery/js引用外部图片时遇到看不了或出现403的问题
Sep 22 jQuery
layui table设置前台过滤转义等方法
Aug 17 Javascript
JS 正则表达式验证密码、邮箱格式的实例代码
Oct 28 Javascript
原生js实现html手机端城市列表索引选择城市
Jun 24 Javascript
javascript获取web应用根目录的方法
Feb 12 #Javascript
使用javascript控制cookie显示和隐藏背景图
Feb 12 #Javascript
raphael.js绘制中国地图 地图绘制方法
Feb 12 #Javascript
js post提交调用方法
Feb 12 #Javascript
JQuery中操作Css样式的方法
Feb 12 #Javascript
Jquery的Tabs内容轮换效果实现代码,几行搞定
Feb 12 #Javascript
js判断设备是否为PC并调整图片大小
Feb 12 #Javascript
You might like
YiiFramework入门知识点总结(图文教程)
2015/12/28 PHP
分享php多功能图片处理类
2016/05/15 PHP
jquery 可拖拽的窗体控件实现代码
2010/03/21 Javascript
thinkphp 表名 大小写 窍门
2015/02/01 Javascript
jQuery延迟加载图片插件Lazy Load使用指南
2015/03/25 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
2015/05/20 Javascript
JavaScript实现的简单拖拽效果
2015/06/01 Javascript
轻松学习jQuery插件EasyUI EasyUI表单验证
2015/12/01 Javascript
剖析Node.js异步编程中的回调与代码设计模式
2016/02/16 Javascript
JavaScript 计算笛卡尔积实例详解
2016/12/02 Javascript
javascript动画之磁性吸附效果篇
2016/12/09 Javascript
javascript实现简单的ajax封装示例
2016/12/28 Javascript
详解JS中的柯里化(currying)
2017/08/17 Javascript
详解vue 组件之间使用eventbus传值
2017/10/25 Javascript
webpack本地开发环境无法用IP访问的解决方法
2018/03/20 Javascript
Vue前端开发规范整理(推荐)
2018/04/23 Javascript
手把手教你vue-cli单页到多页应用的方法
2018/05/31 Javascript
element el-input directive数字进行控制
2018/10/11 Javascript
谈谈React中的Render Props模式
2018/12/06 Javascript
原生js实现可兼容PC和移动端的拖动滑块功能详解【测试可用】
2019/08/15 Javascript
python实现ipsec开权限实例
2014/11/11 Python
python编码最佳实践之总结
2016/02/14 Python
python实现字典(dict)和字符串(string)的相互转换方法
2017/03/01 Python
numpy数组拼接简单示例
2017/12/15 Python
使用matplotlib中scatter方法画散点图
2019/03/19 Python
关于Keras模型可视化教程及关键问题的解决
2020/01/24 Python
Python logging日志模块 配置文件方式
2020/07/12 Python
浅谈盘点5种基于Python生成的个性化语音方法
2021/02/05 Python
美国Rue La La闪购网站:奢侈品、中高档品牌限时折扣
2016/10/19 全球购物
美国最大的在线水培用品商店:GrowersHouse.com
2018/08/14 全球购物
Cotton On香港网站:澳洲时装连锁品牌
2018/11/01 全球购物
光荣入党自我鉴定
2014/01/22 职场文书
幼儿园儿童节活动主持词+串词大全
2014/03/21 职场文书
2014年教研员工作总结
2014/12/23 职场文书
工作简历自我评价
2015/03/11 职场文书
Go语言 go程释放操作(退出/销毁)
2021/04/30 Golang