用JS实现点击小图查看大图的思路和代码是什么
Admin 2022-09-14 群英技术资讯 909 次浏览
这篇文章主要讲解了“用JS实现点击小图查看大图的思路和代码是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“用JS实现点击小图查看大图的思路和代码是什么”吧!功能与实现
点击小图片可以查看大图
实现就是把大图放置在顶层(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";
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了vue-router钩子函数实现路由守卫,对vue感兴趣的同学,可以参考下
javascript的new关键字用法是什么?关于new关键字,大家应该都比较熟悉,这篇文章主要给大家分享构造函数、new操作符和如何实现一个new,小编觉得挺实用的,感兴趣的朋友就继续往下看吧。
小程序实现日历打卡功能 本文实例为大家分享了小程序实现日历打卡功能的具体代码,供大家参考,具体内容如下 一.效果图展示 老惯例,先上效果图 二.实现思路 1.日历展示 例如下图中: 2021月7月打卡日历页面,共35个日期数据,上月残余4天+本月31天: 2021月6月打卡日历页面,共35个日期数据,上月残余2天+本月30天+下月残余3天: 2021月5月打卡日历页面,共42个日期数据,上月残余6天+本月31天+下月残余5天. [结论]打卡日历页面存在展示35个或42个日期数据的情况,35个或42个日期数据=当前显示月
这篇文章给大家介绍一下ECharts鼠标事件的处理方法,事件是用户或浏览器自身执行的某种动作,如click、mouseover、页面加载完毕后触发load事件,都属于事件。为了记录用户的操作和行为路径,需要完成鼠标事件处理和组件交互的行为事件的处理。
在大多数 web 产品中,全局的 Message 组件占有较大的使用场景,本文主要介绍了Vue3实现Message消息组件示例,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008