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 相关文章推荐
发一个自己用JS写的实用看图工具实现代码
Jul 26 Javascript
JS刷新框架外页面七种实现代码
Feb 18 Javascript
js中array的sort()方法使用介绍
Feb 20 Javascript
浅谈JS日期(Date)处理函数
Dec 07 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
Mar 26 Javascript
JavaScript中的函数声明和函数表达式区别浅析
Mar 27 Javascript
javascript数组去重的六种方法汇总
Aug 16 Javascript
Javascript中字符串和数字的操作方法整理
Jan 22 Javascript
localStorage的黑科技-js和css缓存机制
Feb 06 Javascript
JS实现在文本指定位置插入内容的简单示例
Dec 22 Javascript
对angularJs中ng-style动态改变样式的实例讲解
Sep 30 Javascript
PHP 502bad gateway原因及解决方案
Nov 13 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
PHP IPV6正则表达式验证代码
2010/02/16 PHP
Yii2框架中日志的使用方法分析
2017/05/22 PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
2018/10/23 PHP
PHP PDOStatement::getAttribute讲解
2019/02/01 PHP
解决laravel5.4下的group by报错的问题
2019/10/16 PHP
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
JavaScript 对象模型 执行模型
2010/10/15 Javascript
js 获取radio按钮值的实例
2013/08/17 Javascript
动态加载jQuery的两种方法实例分析
2015/07/17 Javascript
详解JavaScript中localStorage使用要点
2016/01/13 Javascript
javascript作用域、作用域链(菜鸟必看)
2016/06/16 Javascript
Bootstrap基本插件学习笔记之标签切换(17)
2016/12/08 Javascript
微信小程序 小程序制作及动画(animation样式)详解
2017/01/06 Javascript
JS实现颜色动态淡化效果
2017/03/06 Javascript
JavaScript基本语法_动力节点Java学院整理
2017/06/26 Javascript
JS随机排序数组实现方法分析
2017/10/11 Javascript
jQuery中库的引用方法
2018/01/06 jQuery
Vue中使用ElementUI使用第三方图标库iconfont的示例
2018/10/11 Javascript
vue中axios请求的封装实例代码
2019/03/23 Javascript
详解webpack的文件监听实现(热更新)
2020/09/11 Javascript
微信小程序实现自定义底部导航
2020/11/18 Javascript
JS canvas实现画板和签字板功能
2021/02/23 Javascript
[01:07:46]完美世界DOTA2联赛循环赛 Magma vs IO BO2第二场 11.01
2020/11/02 DOTA
Python实现的knn算法示例
2018/06/14 Python
Python函数参数匹配模型通用规则keyword-only参数详解
2019/06/10 Python
如何运行.ipynb文件的图文讲解
2019/06/27 Python
朗仕(Lab series)英国官网:雅诗兰黛集团男士专属护肤品牌
2017/11/28 全球购物
Tirendo比利时:在线购买轮胎
2018/10/22 全球购物
学生个人的自我评价分享
2013/11/05 职场文书
应届生自荐信范文
2014/02/21 职场文书
公司寄语大全
2014/04/10 职场文书
地下停车场租赁协议范本
2014/10/07 职场文书
2015年国税春训心得体会
2015/03/09 职场文书
食品药品安全责任书
2015/05/11 职场文书
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
2021/04/06 Python
海康机器人重磅发布全新算法开发平台VM4.2
2022/04/21 数码科技