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实现鼠标滑过预览图片大图效果的方法
Apr 26 jQuery
JS+jQuery实现注册信息的验证功能
Sep 26 jQuery
jquery实现左右轮播图效果
Sep 28 jQuery
bootstrap+jquery项目引入文件报错的解决方法
Jan 22 jQuery
jQuery替换节点元素的操作方法
Mar 18 jQuery
jQuery阻止事件冒泡实例分析
Jul 03 jQuery
jQuery实现的简单手风琴效果示例
Aug 29 jQuery
jQuery实现根据身份证号获取生日、年龄、性别等信息的方法
Jan 09 jQuery
jQuery控制input只能输入数字和两位小数的方法
May 16 jQuery
如何使用CSS3和JQuery easing 插件制作绚丽菜单
Jun 18 jQuery
jQuery实现的解析本地 XML 文档操作示例
Apr 30 jQuery
JQuery表单元素取值赋值方法总结
May 12 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中判断一个字符串包含另一个字符串的方法
2007/03/19 PHP
PHP中基本符号及使用方法
2010/03/23 PHP
php实现用户在线时间统计详解
2011/10/08 PHP
PHP生成压缩文件实例
2015/02/07 PHP
JS(jQuery)实现聊天接收到消息语言自动提醒功能详解【提示“您有新的消息请注意查收”】
2019/04/16 PHP
js中typeof的用法汇总
2013/12/12 Javascript
jquery实现tr元素的上下移动示例代码
2013/12/20 Javascript
SeaJS入门教程系列之完整示例(三)
2014/03/03 Javascript
处理文本部分内容的TextRange对象应用实例
2014/07/29 Javascript
JavaScript位移运算符(无符号) &gt;&gt;&gt; 三个大于号 的使用方法详解
2016/03/31 Javascript
初识简单却不失优雅的Vue.js
2016/09/12 Javascript
基于vue.js轮播组件vue-awesome-swiper实现轮播图
2017/03/17 Javascript
nodejs入门教程二:创建一个简单应用示例
2017/04/24 NodeJs
Angular中封装fancyBox(图片预览)遇到问题小结
2017/09/01 Javascript
vuex实现登录状态的存储,未登录状态不允许浏览的方法
2018/03/09 Javascript
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
Node.js EventEmmitter事件监听器用法实例分析
2019/01/07 Javascript
关于微信小程序获取小程序码并接受buffer流保存为图片的方法
2019/06/07 Javascript
vue实现一个获取按键展示快捷键效果的Input组件
2021/01/13 Vue.js
Python实现基于权重的随机数2种方法
2015/04/28 Python
Python 多个图同时在不同窗口显示的实现方法
2019/07/07 Python
python将类似json的数据存储到MySQL中的实例
2019/07/12 Python
python批量修改ssh密码的实现
2019/08/08 Python
Python将二维列表list的数据输出(TXT,Excel)
2020/04/23 Python
Python实现七个基本算法的实例代码
2020/10/08 Python
香港个人化生活购物网站:Ballyhoo Limited
2016/09/10 全球购物
Java中有几种方法可以实现一个线程?用什么关键字修饰同步方法?stop()和suspend()方法为何不推荐使用?
2015/08/04 面试题
Java程序员面试题
2016/09/27 面试题
西门豹教学反思
2014/02/04 职场文书
《青蛙看海》教学反思
2014/04/23 职场文书
家长会标语
2014/06/24 职场文书
个人委托书范本
2014/09/13 职场文书
2014年外联部工作总结
2014/11/17 职场文书
客户答谢会致辞
2015/01/20 职场文书
Windows Server 2012 R2服务器安装与配置的完整步骤
2022/07/15 Servers
win10系统计算机图标怎么调出来?win10调出计算机图标的方法
2022/08/14 数码科技