Javascript查看大图功能代码实现


Posted in Javascript onMay 07, 2020

功能与实现

点击小图片可以查看大图

实现就是把大图放置在顶层(z-index大于当前页面的),并且还可以加一些额外的比如透明度什么的。

大图以动画的形式出现

动画就是css动画样式了,可以自定义动画,将图片一点点变大,发挥想象了。

代码

html代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <link rel="stylesheet" href="style.css" rel="external nofollow" type="text/css">
  <link rel="stylesheet" href="https://cdn.staticfile.org/font-awesome/4.7.0/css/font-awesome.css" rel="external nofollow" >
</head>

<body>
<div class="row">
  <div class="col" onclick="open_container(1)">
    <img src="img/1.jpg" class="img">
  </div>
  <div class="col" onclick="open_container(2)">
    <img src="img/2.jpg" class="img">
  </div>
  <div class="col" onclick="open_container(3)">
    <img src="img/3.jpg" class="img">
  </div>
  <div class="col" onclick="open_container(4)">
    <img src="img/4.jpg" class="img">
  </div>
</div>
<div class="container" id="container">
  <div class="close" id="close" onclick="close_container()">
    <i class="fa fa-close" style="font-size:130px;color:white;"></i>
  </div>

  <div class="container_content">
    <img id="content_img" class="content_img" src="img/1.jpg">
  </div>
</div>
</body>
<script type="text/javascript" src="show.js"></script>
</html>

css代码

.row{
  margin:auto;
}
.row:after {
  content: "";
  display: table;
  clear: both;
}
.col{
  float: left;
  width: 20%;
}
img {
  margin-bottom: -4px;
  width:100%;
  height: auto;
}
.close{
  position:absolute;
  top:30px;
  right:30px;
}

.container{
  display:none;
  position:fixed;
  z-index:1;/*设置层叠顺序:拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面*/
  padding-top:100px;/*放置关闭按钮*/
  left:0px;
  top:0px;
  width: 100%;
  height:100%;
  overflow: auto; /*--溢出的情况*/
  opacity:0.85;/*透明*/
  background-color: black;
}

.container_content{
  position: relative;
  background-color: black;
  margin: auto;
  width: 90%;
  max-width: 1200px;
}
 
.content_img{
  width:150%;
  height: auto;
  -webkit-animation-name: zoom;
  -webkit-animation-duration: 0.6s;
  animation-name: zoom;
  animation-duration: 0.6s;
}

@-webkit-keyframes zoom {/*自定义动画*/
  from {-webkit-transform:scale(0)}
  to {-webkit-transform:scale(1)}
}

@keyframes zoom {/*自定义动画*/
  from {transform:scale(0)}
  to {transform:scale(1)}
}

js代码

function open_container(x){
  document.getElementById("container").style.display="block";
  var str="";
  str="img/"+x+".jpg";
  document.getElementById("content_img").src=str;
}
function close_container(){
  document.getElementById("container").style.display="none";
}

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

Javascript 相关文章推荐
Prototype 工具函数 学习
Jul 23 Javascript
jQuery实现切换页面布局使用介绍
Oct 09 Javascript
js delete 用法(删除对象属性及变量)
Aug 24 Javascript
jQuery+css3实现文字跟随鼠标的上下抖动
Jul 31 Javascript
jquery实现简单实用的弹出层效果代码
Oct 15 Javascript
利用jquery实现验证输入的是否是数字、小数,包含保留几位小数
Dec 07 Javascript
Angular5中调用第三方库及jQuery的添加的方法
Jun 07 jQuery
性能优化篇之Webpack构建速度优化的建议
Apr 03 Javascript
微信小程序实现一张或多张图片上传(云开发)
Sep 25 Javascript
eslint+prettier统一代码风格的实现方法
Jul 22 Javascript
Vue+Element自定义纵向表格表头教程
Oct 26 Javascript
Js实现粘贴上传图片的原理及示例
Dec 09 Javascript
用VsCode编辑TypeScript的实现方法
May 07 #Javascript
JavaScript交换变量的常用方法小结【4种方法】
May 07 #Javascript
原生JavaScript创建不可变对象的方法简单示例
May 07 #Javascript
Javascript幻灯片播放功能实现过程解析
May 07 #Javascript
基于javascript实现日历功能原理及代码实例
May 07 #Javascript
Vue简单实现原理详解
May 07 #Javascript
angular组件间通讯的实现方法示例
May 07 #Javascript
You might like
颠覆常识!无色透明的咖啡诞生了(中日双语)
2021/03/03 咖啡文化
利用PHP创建动态图像
2006/10/09 PHP
繁体中文转换为简体中文的PHP函数
2006/10/09 PHP
谈PHP生成静态页面分析 模板+缓存+写文件
2009/08/17 PHP
成为好程序员必须避免的5个坏习惯
2014/07/04 PHP
深入理解PHP中的count函数
2016/05/31 PHP
PHP钩子与简单分发方式实例分析
2017/09/04 PHP
PHP7移除的扩展和SAPI
2021/03/09 PHP
js隐藏与显示回到顶部按钮及window.onscroll事件应用
2013/01/25 Javascript
jquery 卷帘效果实现代码(不同方向)
2013/02/05 Javascript
详解jQuery插件开发中的extend方法
2013/11/19 Javascript
js中 javascript:void(0) 用法详解
2015/08/11 Javascript
vue2.x 父组件监听子组件事件并传回信息的方法
2017/07/17 Javascript
详解vue-cli快速构建vue应用并实现webpack打包
2017/12/13 Javascript
javaScript实现鼠标在文字上悬浮时弹出悬浮层效果
2020/04/12 Javascript
浅谈webpack SplitChunksPlugin实用指南
2018/09/17 Javascript
JavaScript实现的开关灯泡点击切换特效示例
2019/07/08 Javascript
JavaScript 替换所有匹配内容及正则替换方法
2020/02/12 Javascript
Python 爬虫多线程详解及实例代码
2016/10/08 Python
Python中单、双下划线的区别总结
2017/12/01 Python
Python pyinotify模块实现对文档的实时监控功能方法
2018/10/13 Python
pyqt5实现俄罗斯方块游戏
2019/01/11 Python
python安装gdal的两种方法
2019/10/29 Python
python tkinter canvas使用实例
2019/11/04 Python
TFRecord格式存储数据与队列读取实例
2020/01/21 Python
利用Python实现Json序列化库的方法步骤
2020/09/09 Python
英国天然保健品网站:Simply Supplements
2017/03/22 全球购物
实体的生命周期
2013/08/31 面试题
大学生毕业求职自荐书范文
2014/02/04 职场文书
低碳日宣传活动总结
2014/07/09 职场文书
公务员学习习总书记“三严三实”思想汇报
2014/09/19 职场文书
专业技术人员年度考核评语
2014/12/31 职场文书
pytorch Dropout过拟合的操作
2021/05/27 Python
Nginx配置之实现多台服务器负载均衡
2021/08/02 Servers
Spring-cloud Config Server的3种配置方式
2021/09/25 Java/Android
SpringBoot2零基础到精通之异常处理与web原生组件注入
2022/03/22 Java/Android