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 相关文章推荐
IE之动态添加DOM节点触发window.resize事件
Jul 27 Javascript
js两行代码按指定格式输出日期时间
Oct 21 Javascript
js控制CSS样式属性语法对照表
Dec 11 Javascript
使用javascipt---实现二分查找法
Apr 10 Javascript
node.js适合游戏后台开发吗?
Sep 03 Javascript
angularjs在ng-repeat中使用ng-model遇到的问题
Jan 21 Javascript
javascript中call apply 与 bind方法详解
Mar 10 Javascript
node.js插件nodeclipse安装图文教程
Oct 19 Javascript
AngularJS动态菜单操作指令
Apr 25 Javascript
JavaScript实现单例模式实例分享
Dec 22 Javascript
Vue的土著指令和自定义指令实例详解
Feb 04 Javascript
vue 使用vue-i18n做全局中英文切换的方法
Oct 29 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
一组PHP可逆加密解密算法实例代码
2014/01/21 PHP
一个基于phpQuery的php通用采集类分享
2014/04/09 PHP
JS取文本框中最小值的简单实例
2013/11/29 Javascript
js与jQuery 获取父窗、子窗的iframe
2013/12/20 Javascript
ExtJS中设置下拉列表框不可编辑的方法
2014/05/07 Javascript
js实现div层缓慢收缩与展开的方法
2015/05/11 Javascript
简介JavaScript中fixed()方法的使用
2015/06/08 Javascript
jQuery选择器总结之常用元素查找方法
2016/08/04 Javascript
详解Angular的双向数据绑定(MV-VM)
2016/12/26 Javascript
jquery表单插件form使用方法详解
2017/01/20 Javascript
理解javascript中的Function.prototype.bind的方法
2017/02/03 Javascript
NodeJS学习笔记之Module的简介
2017/03/24 NodeJs
最全的JavaScript开发工具列表 总有一款适合你
2017/06/29 Javascript
vue实现全匹配搜索列表内容
2019/09/26 Javascript
JS如何把字符串转换成json
2020/02/21 Javascript
利用 JavaScript 实现并发控制的示例代码
2020/12/31 Javascript
Python的词法分析与语法分析
2013/05/18 Python
python 在指定范围内随机生成不重复的n个数实例
2019/01/28 Python
python Pillow图像处理方法汇总
2019/10/16 Python
win10安装tesserocr配置 Python使用tesserocr识别字母数字验证码
2020/01/16 Python
python 19个值得学习的编程技巧
2020/08/15 Python
在终端启动Python时报错的解决方案
2020/11/20 Python
纯CSS3实现圆圈动态发光特效动画的示例代码
2021/03/08 HTML / CSS
意大利香水和彩妆护肤品购物网站:Ditano
2017/08/13 全球购物
澳洲网红粉泥面膜:Sand & Sky
2019/08/13 全球购物
财务会计专业毕业生自荐信
2013/10/02 职场文书
自我鉴定怎么写
2013/12/05 职场文书
公司总经理岗位职责
2014/03/15 职场文书
医院信息公开实施方案
2014/05/09 职场文书
中学教师师德承诺书
2014/05/23 职场文书
预防艾滋病宣传标语
2014/06/25 职场文书
白酒营销策划方案
2014/08/17 职场文书
学生党员批评与自我批评
2014/10/15 职场文书
全国法院系统开展党的群众路线教育实践活动综述(全文)
2014/10/25 职场文书
某药房的新员工入职告知书!
2019/07/15 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书