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源码解读之extend()与工具方法、实例方法详解
Mar 30 jQuery
jQuery+koa2实现简单的Ajax请求的示例
Mar 06 jQuery
jQuery发请求传输中文参数乱码问题的解决方案
May 22 jQuery
jQuery实现图片上传预览效果功能完整实例【测试可用】
May 28 jQuery
jquery 动态遍历select 赋值的实例
Sep 12 jQuery
使用jquery模拟a标签的click事件无法实现跳转的解决
Dec 04 jQuery
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
Dec 29 jQuery
使用JQuery自动完成插件Auto Complete详解
Jun 18 jQuery
jquery ajax 请求小技巧实例分析
Nov 11 jQuery
jquery获取input输入框中的值
Nov 13 jQuery
jquery css实现流程进度条
Mar 26 jQuery
jQuery实现带进度条的轮播图
Sep 13 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实现链式操作的核心思想
2015/06/23 PHP
WordPress中创建用户角色的相关PHP函数使用详解
2015/12/25 PHP
兼容多浏览器的字幕特效Marquee的通用js类
2008/07/20 Javascript
封装的原生javascript弹出层代码
2010/09/24 Javascript
IE下js调试工具Companion.JS
2010/10/15 Javascript
JavaScript 原型继承之构造函数继承
2011/08/26 Javascript
利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码
2011/10/22 Javascript
iframe的父子窗口之间的对象相互调用基本用法
2013/09/03 Javascript
基于jquery实现导航菜单高亮显示(两种方法)
2015/08/23 Javascript
jQuery排序插件tableSorter使用方法
2017/02/10 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
2017/05/11 Javascript
javascript实现最长公共子序列实例代码
2018/02/05 Javascript
vue .sync修饰符的使用详解
2018/06/15 Javascript
详解微信小程序开发之formId使用(模板消息)
2019/08/27 Javascript
JavaScript Reflect Metadata实现详解
2019/12/12 Javascript
Vue实现简单计算器案例
2020/02/25 Javascript
完美解决vue 中多个echarts图表自适应的问题
2020/07/19 Javascript
Vue js with语句原理及用法解析
2020/09/03 Javascript
python获取本机mac地址和ip地址的方法
2015/04/29 Python
Python实现自动添加脚本头信息的示例代码
2016/09/02 Python
python 采集中文乱码问题的完美解决方法
2016/09/27 Python
老生常谈Python startswith()函数与endswith函数
2017/09/08 Python
详解python中的Turtle函数库
2018/11/19 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
2020/05/26 Python
与世界上最好的跑步专业品牌合作:Fleet Feet
2019/03/22 全球购物
Tessabit美国:集世界奢侈品和设计师品牌的意大利精品买手店
2020/06/29 全球购物
AJAX的优缺点都有什么
2015/08/18 面试题
怎么写好自荐书
2014/03/02 职场文书
元旦促销方案
2014/03/15 职场文书
班主任寄语大全
2014/04/04 职场文书
小学向国旗敬礼活动方案
2014/09/27 职场文书
师德师风整改措施
2014/10/24 职场文书
个人先进材料范文
2014/12/30 职场文书
综合管理员岗位职责
2015/02/11 职场文书
撤诉申请书法院范本
2015/05/18 职场文书
谁动了我的奶酪读书笔记
2015/06/30 职场文书