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 相关文章推荐
JS常见问题整理(持续更新)
Aug 06 Javascript
优化Jquery,提升网页加载速度
Nov 14 Javascript
jquery插件开发之实现jquery手风琴功能分享
Mar 10 Javascript
创建js对象和js类的方法汇总
Dec 24 Javascript
jQuery:unbind方法的使用详解
Aug 14 jQuery
jQuery 实现鼠标画框并对框内数据选中的实例代码
Aug 29 jQuery
详解小程序缓存插件(mrc)
Aug 17 Javascript
基于Koa2写个脚手架模拟接口服务的方法
Nov 27 Javascript
浅谈Fetch 数据交互方式
Dec 20 Javascript
jquery操作select常见方法大全【7种情况】
May 28 jQuery
vue遍历生成的输入框 绑定及修改值示例
Oct 30 Javascript
VUE实现吸底按钮
Mar 04 Vue.js
用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
Php做的端口嗅探器--可以指定网站和端口
2006/10/09 PHP
php递归方法实现无限分类实例代码
2014/02/28 PHP
php导入excel文件到mysql数据库的方法
2015/01/14 PHP
PHP实现的memcache环形队列类实例
2015/07/28 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
2017/06/27 PHP
CentOS7编译安装php7.1的教程详解
2019/04/18 PHP
了不起的node.js读书笔记之mongodb数据库交互
2014/12/22 Javascript
Javascript设计模式理论与编程实战之简单工厂模式
2015/11/03 Javascript
JS中from 表单序列化提交的代码
2017/01/20 Javascript
jQuery插件MovingBoxes实现左右滑动中间放大图片效果
2017/02/28 Javascript
angularjs实现下拉列表的选中事件示例
2017/03/03 Javascript
Angular2整合其他插件的方法
2018/01/20 Javascript
JavaScript惰性载入函数实例分析
2019/03/27 Javascript
开源一个微信小程序仪表盘组件过程解析
2019/07/30 Javascript
如何基于JavaScript判断图片是否加载完成
2019/12/28 Javascript
[47:39]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 LGD vs OPTIC
2018/03/31 DOTA
[00:11]战神迅矛
2019/03/06 DOTA
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
利用python写个下载teahour音频的小脚本
2017/05/08 Python
用python代码将tiff图片存储到jpg的方法
2018/12/04 Python
Python3最长回文子串算法示例
2019/03/04 Python
pyinstaller打包成无控制台程序时运行出错(与popen冲突的解决方法)
2020/04/15 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
Python 操作SQLite数据库的示例
2020/10/16 Python
资产经营总监岗位职责范文
2013/12/01 职场文书
大学军训通讯稿
2014/01/13 职场文书
护理专业毕业生自我鉴定总结
2014/03/24 职场文书
实习证明格式范文
2014/10/14 职场文书
2014年高一班主任工作总结
2014/12/05 职场文书
2014年生产部工作总结
2014/12/17 职场文书
客户经理岗位职责
2015/01/31 职场文书
2015年学生会工作总结范文
2015/03/31 职场文书
银行中层干部培训心得体会
2016/01/11 职场文书
HTML基础-标签分类(闭合标签,空标签,块级元素,行内元素,行级块元素,可替换元素)
2021/03/31 HTML / CSS
go 原生http web 服务跨域restful api的写法介绍
2021/04/27 Golang
Mysql忘记密码解决方法
2022/02/12 MySQL