jQuery实现的图片点击放大缩小功能案例


Posted in jQuery onJanuary 02, 2020

本文实例讲述了jQuery实现的图片点击放大缩小功能。分享给大家供大家参考,具体如下:

我们不废话,直接上例子。首先利用dom的垂直分层实现图片的点击放大和缩小(手机上使用的效果较好),在图片放大的时候同时禁止页面的滑动,如果在web端的话可以不禁止屏幕的滚动(因为图片放大是将图片的宽度变成100%,在web上长度可能会超出屏幕 的高度)。

来看css部分代码:

<style>
  /*全屏显示大图*/
  .opacityBottom{
    width: 100%;
    height: 100%;
    position: fixed;
    background:rgba(0,0,0,0.8);
    z-index:1000;
    top: 0;
    left: 0
  }
  .none-scroll{
    overflow: hidden;
    height: 80%;
  }
  .bigImg{
    width:80%;
    height: 80%;
    left:10%;
    top:10%;
    position:fixed;
    z-index: 10001;
  }
</style>

咱们再来看下js部分的代码:

$(".image_click").click(function () {
  var imgsrc = $(this).attr("src");
  var opacityBottom = '<div id="opacityBottom" style="display: none"><img class="bigImg" src="'+ imgsrc +'" ></div>';
  $(document.body).append(opacityBottom);
  toBigImg();//变大函数
});
function toBigImg(){
  $("#opacityBottom").addClass("opacityBottom");
  $("#opacityBottom").show();
  $("html,body").addClass("none-scroll");//下层不可滑动
  $(".bigImg").addClass("bigImg");
  /*隐藏*/
  $("#opacityBottom").bind("click",clickToSmallImg);
  $(".bigImg").bind("click",clickToSmallImg);
  var imgHeight = $(".bigImg").prop("height");
  if(imgHeight < h){
    $(".bigImg").css({"top":(h-imgHeight)/2 + 'px'});
  }else{
    $(".bigImg").css({"top":'0px'});
  }
  function clickToSmallImg() {
    $("html,body").removeClass("none-scroll");
    $("#opacityBottom").remove();
  }
};

image_click是绑定图片的class值,这个案例非常简单,还可以通过修改css来展示不同的样式的图片,大家有时间可以研究下,今天有点懒,直接贴的代码。

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具 http://tools.3water.com/code/HtmlJsRun 测试上述代码运行效果。

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
Apr 10 jQuery
jQuery判断邮箱格式对错实例代码讲解
Apr 12 jQuery
jQuery图片缩放插件smartZoom使用实例详解
Aug 25 jQuery
jQuery Ajax向服务端传递数组参数值的实例代码
Sep 03 jQuery
jQuery序列化form表单数据为JSON对象的实现方法
Sep 20 jQuery
在Vue项目中引入JQuery-ui插件的讲解
Jan 27 jQuery
jquery 回调操作实例分析【回调成功与回调失败的情况】
Sep 27 jQuery
jquery使用echarts实现有向图可视化功能示例
Nov 25 jQuery
jQuery Datatables 动态列+跨列合并实现代码
Jan 30 jQuery
jQuery实现中奖播报功能(让文本滚动起来) 简单设置数值即可
Mar 20 jQuery
如何在vue 中引入使用jquery
Nov 10 jQuery
Jquery+javascript实现支付网页数字键盘
Dec 21 jQuery
jQuery模仿ToDoList实现简单的待办事项列表
Dec 30 #jQuery
jQuery+PHP+Ajax实现动态数字统计展示功能
Dec 25 #jQuery
JQuery常用选择器功能与用法实例分析
Dec 23 #jQuery
Jquery属性的获取/设置及样式添加/删除操作技巧分析
Dec 23 #jQuery
JQuery中DOM节点的操作与访问方法实例分析
Dec 23 #jQuery
JQuery中的常用事件、对象属性与使用方法分析
Dec 23 #jQuery
jquery实现商品sku多属性选择功能(商品详情页)
Dec 20 #jQuery
You might like
PHP基于单例模式实现的mysql类
2016/01/09 PHP
去除链接虚线全面分析总结
2006/08/15 Javascript
分享别人写的一个小型js框架
2007/08/13 Javascript
js multiple全选与取消全选实现代码
2012/12/04 Javascript
JS实现悬浮移动窗口(悬浮广告)的特效
2013/03/12 Javascript
使用jQuery重置(reset)表单的方法
2014/05/05 Javascript
JavaScript设计模式之策略模式实例
2014/10/10 Javascript
关于事件mouseover ,mouseout ,mouseenter,mouseleave的区别
2015/10/12 Javascript
js本地图片预览实现代码
2016/10/09 Javascript
jquery与ajax获取特殊字符实例详解
2017/01/08 Javascript
Angular 通过注入 $location 获取与修改当前页面URL的实例
2017/05/31 Javascript
js学习总结_选项卡封装(实例讲解)
2017/07/13 Javascript
jQuery中extend函数简单用法示例
2017/10/11 jQuery
vuejs实现标签选项卡动态更改css样式的方法
2018/05/31 Javascript
layui 实现表格某一列显示图标
2019/09/19 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
2019/12/02 Javascript
js实现鼠标切换图片(无定时器)
2021/01/27 Javascript
[02:22:36]《加油!DOTA》总决赛
2014/09/19 DOTA
玩转python selenium鼠标键盘操作(ActionChains)
2020/04/12 Python
浅谈Python类的__getitem__和__setitem__特殊方法
2016/12/25 Python
Python tkinter实现的图片移动碰撞动画效果【附源码下载】
2018/01/04 Python
python实现mysql的读写分离及负载均衡
2018/02/04 Python
pygame游戏之旅 添加icon和bgm音效的方法
2018/11/21 Python
10分钟教你用Python实现微信自动回复功能
2018/11/28 Python
python数据分析工具之 matplotlib详解
2020/04/09 Python
python使用Thread的setDaemon启动后台线程教程
2020/04/25 Python
关于python中remove的一些坑小结
2021/01/04 Python
canvas 基础之图像处理的使用
2020/04/10 HTML / CSS
《我的信念》教学反思
2014/02/15 职场文书
企业员工培训感言
2014/02/26 职场文书
四年级评语大全
2014/04/21 职场文书
销售目标责任书
2014/07/23 职场文书
反对四风自我剖析材料
2014/10/07 职场文书
作文批改评语
2014/12/25 职场文书
简爱读书笔记
2015/06/26 职场文书
2019年朋友圈经典励志语录50条
2019/07/05 职场文书