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实现字体颜色渐变效果的方法
Mar 29 jQuery
jQuery加密密码到cookie的实现代码
Apr 18 jQuery
jQuery实现简单的计时器功能实例分析
Aug 29 jQuery
简单实现jQuery弹窗效果
Oct 30 jQuery
jQuery简单实现向列表动态添加新元素的方法示例
Dec 25 jQuery
jquery实现楼层滚动效果
Jan 01 jQuery
JS/jQuery实现简单的开关灯效果【案例】
Feb 19 jQuery
jquery 遍历hash操作示例【基于ajax交互】
Oct 12 jQuery
jQuery实现王者荣耀手风琴效果
Jan 17 jQuery
jQuery实现鼠标滑动切换图片
May 27 jQuery
jQuery实现雪花飘落效果
Aug 02 jQuery
JQuery Ajax如何实现注册检测用户名
Sep 25 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 SESSION的增加、删除、修改、查看操作
2015/03/20 PHP
php商品对比功能代码分享
2015/09/24 PHP
Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程
2015/12/23 PHP
jquery中输入验证中一个不错的效果
2010/08/21 Javascript
javascript中callee与caller的用法和应用场景
2010/12/08 Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
2013/01/08 Javascript
JQuery中使用Ajax赋值给全局变量失败异常的解决方法
2014/08/18 Javascript
js获取域名的方法
2015/01/27 Javascript
js实现Form栏显示全格式时间时钟效果代码
2015/08/19 Javascript
JavaScript计划任务后台运行的方法
2015/12/18 Javascript
JavaScript位置与大小(1)之正确理解和运用与尺寸大小相关的DOM属性
2015/12/26 Javascript
js拖拽的原型声明和用法总结
2016/04/04 Javascript
详解Angular2中的编程对象Observable
2016/09/17 Javascript
用nodejs搭建websocket服务器
2017/01/23 NodeJs
angular实现商品筛选功能
2017/02/01 Javascript
Vue插件写、用详解(附demo)
2017/03/20 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
node app 打包工具pkg的具体使用
2019/01/17 Javascript
JavaScript跳出循环的三种方法(break, return, continue)
2019/07/30 Javascript
Javascript新手入门之字符串拼接与变量的应用
2020/12/03 Javascript
在Python的Django框架中创建语言文件
2015/07/27 Python
使用Python的Tornado框架实现一个Web端图书展示页面
2016/07/11 Python
浅谈python for循环的巧妙运用(迭代、列表生成式)
2017/09/26 Python
Django自定义manage命令实例代码
2018/02/11 Python
Pyecharts地图显示不完成问题解决方案
2020/05/11 Python
基于Keras 循环训练模型跑数据时内存泄漏的解决方式
2020/06/11 Python
TUMI澳大利亚网站:美国旅行箱包品牌
2017/03/27 全球购物
《与朱元思书》的教学反思
2014/04/17 职场文书
让生命充满爱演讲稿
2014/05/10 职场文书
2014年会计主管工作总结
2014/12/20 职场文书
英语感谢信范文
2015/01/20 职场文书
2015年幼儿园大班工作总结
2015/04/25 职场文书
护士2015年终工作总结
2015/04/29 职场文书
2015年新农村建设工作总结
2015/05/22 职场文书
Python机器学习之基础概述
2021/05/19 Python
MIME类型中application/xml与text/xml的区别介绍
2022/01/18 HTML / CSS