全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

jquery单击文字或图片内容放大并居中显示

我们想要实现的效果是:

点击一张小图,会在页面的居中位置显示一张大图。

使用了animate动画函数,有从小图到大图,从小图位置到居中位置的轨迹。

支持IE7及以上浏览器,火狐、谷歌浏览器。

大图得居中位置,我主要使用了如下代码:

var width=$('.alert').find('img').width();//大图得宽高
var height=$('.alert').find('img').height();
var lwidth=$(window).width();//屏幕中页面可见区域的宽高
var lheight=$(window).height();
var x2=lwidth/2-width/2+$(window).scrollLeft();//在屏幕居中的坐标
var y2=lheight/2-height/2+$(window).scrollTop();

这里面加上了滚动条的宽度和高度,这样可以在有滚动条的情况下也是居中显示的。

主要的代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>单击文字或图片内容放大显示</title>
  <script src="../jquery-1.8.3.min.js"></script>
  <style>
    *{margin:0;padding:0;}
    ul{overflow:hidden;list-style:none;margin:1000px auto;}
    ul li{float:left;height:150px;width:130px;margin:0 10px;}
    .bigpic{position:absolute;display:none;}
    .alert{background:#fff;border:solid #ccc 1px;padding:10px;}
    .alert a.close{position:absolute;top:0;right:0;}
  </style>
</head>
<body>
  <ul>
    <li><img src="mm1.jpg"></li>
    <li><img src="mm2.jpg"></li>
    <li><img src="mm3.jpg"></li>
    <li><img src="mm4.jpg"></li>
  </ul>
  <div class="bigpic" style="display:none;">
    <div class="pic-one"><img src="m1.jpg"></div>
    <div class="pic-two"><img src="m2.jpg"></div>
    <div class="pic-three"><img src="m3.jpg"></div>
    <div class="pic-four"><img src="m4.jpg"></div>
  </div>
  <div class="alert" style="display:none;">
    <a class="close" href="javascript:;" rel="external nofollow" >关闭</a>
  </div>
  <script>
    var x=0;
    var y=0;
    $('ul li').click(function(e){
      var index=$(this).index();
      x= e.pageX|| e.clientX+$(window).scrollLeft();//鼠标点击的坐标
      y= e.pageY|| e.clientY+$(window).scrollTop();
      $('.alert').css({position:'absolute',top:y,left:x,width:'1px',height:'1px',overflow:'hidden'});
      var bigpic=$('.bigpic').find('div').eq(index).find('img').attr('src');//找到相对应的大图片
      $('.alert').find('img').remove();
      $('.alert').append("<img src="+bigpic+">");//添加大图
      $('.alert').show();
      var width=$('.alert').find('img').width();//大图得宽高
      var height=$('.alert').find('img').height();
      var lwidth=$(window).width();//屏幕页面可见区域的宽高
      var lheight=$(window).height();
      var x2=lwidth/2-width/2+$(window).scrollLeft();//在屏幕居中的坐标
      var y2=lheight/2-height/2+$(window).scrollTop();
      $('.alert img').css({width:'100%'});
      $('.alert').animate({left:x2,top:y2,width:width,height:height},300);
    })
    //这出现一个问题,当alert宽度和高度都为15px时或以下,如果不加padding,img是100%,就会造成图片不是从左上角开始的,上面就会有空白,这是因为父元素是块状元素,有自己的行间距,二他的子元素是行内元素,这样就会有空隙,此时解决方法有两个,
    // 给img加上display:block属性,形成块状元素;
    // 或者img还是内联元素,此时使用vertical-align:top可以向上对齐。
    //把父元素的间距设置为0,或者父元素的font-size设置为0yekeyi
    $('.alert a.close').click(function(){
      //console.log(x+'```'+y);
      $('.alert').animate({left:x,top:y,width:'1px',height:'1px'},300);  //全局变量
      $('.alert').fadeOut(100);
    })
  </script>
</body>
</html>

效果可复制代码,自行在页面中查看。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# jquery  # 点击放大  # 居中显示  # jQuery实现等比例缩放大图片让大图片自适应页面布局  # 基于jquery实现一张图片点击鼠标放大再点缩小  # jQuery当鼠标悬停时放大图片的效果实例  # jQuery实现图片放大预览实现原理及代码  # 基于jquery的滚动鼠标放大缩小图片效果  # 一个CSS+jQuery实现的放大缩小动画效果  # jQuery div层的放大与缩小简单实现代码  # jquery 实现京东商城、凡客商城的图片放大效果  # zShowBox 图片放大展示jquery版 兼容性  # jQuery实现响应浏览器缩放大小并改变背景颜色  # 会有  # 小图  # 设置为  # 自己的  # 滚动条  # 这是  # 就会  # 使用了  # 行间  # 上了  # 会在  # 是从  # 火狐  # 一个问题  # 不加  # 这里面  # 都为  # 解决方法  # 相对应  # 单击 


相关文章: 简单实现Android文件上传  建站之星上传入口如何快速找到?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?  网站制作软件有哪些,制图软件有哪些?  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  定制建站策划方案_专业建站与网站建设方案一站式指南  如何在香港免费服务器上快速搭建网站?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  清除minerd进程的简单方法  如何选择网络建站服务器?高效建站必看指南  建站主机选哪种环境更利于SEO优化?  如何选择靠谱的建站公司加盟品牌?  网站制作公司排行榜,抖音怎样做个人官方网站  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  山东云建站价格为何差异显著?  宝塔建站无法访问?如何排查配置与端口问题?  大型企业网站制作流程,做网站需要注册公司吗?  手机怎么制作网站教程步骤,手机怎么做自己的网页链接?  如何通过西部数码建站助手快速创建专业网站?  如何通过虚拟主机空间快速建站?  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  如何选择PHP开源工具快速搭建网站?  招贴海报怎么做,什么是海报招贴?  较简单的网站制作软件有哪些,手机版网页制作用什么软件?  建站为何优先选择香港服务器?  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何构建满足综合性能需求的优质建站方案?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何快速搭建二级域名独立网站?  音响网站制作视频教程,隆霸音响官方网站?  北京建设网站制作公司,北京古代建筑博物馆预约官网?  如何在云指建站中生成FTP站点?  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  如何在云主机快速搭建网站站点?  在线制作视频的网站有哪些,电脑如何制作视频短片?  如何在Tomcat中配置并部署网站项目?  Python多线程使用规范_线程安全解析【教程】  实现虚拟支付需哪些建站技术支撑?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  高防服务器如何保障网站安全无虞?  常州企业网站制作公司,全国继续教育网怎么登录?  电商平台网站制作流程,电商网站如何制作?  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  建站之星如何快速生成多端适配网站?  黑客入侵网站服务器的常见手法有哪些?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。