用JS实现点击小图查看大图的思路和代码是什么
Admin 2022-09-14 群英技术资讯 733 次浏览
这篇文章主要讲解了“用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进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍“Cocos项目中有哪些使用的开发技巧”,有一些人在Cocos项目中有哪些使用的开发技巧的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。
这篇文章主要为大家详细介绍了JavaScript实现返回顶部按钮,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
这篇文章主要介绍了CocosCreator系统事件是怎么产生及触发的,虽然内容不少,但是只要一点点抽丝剥茧,具体分析其内容,就会豁然开朗
本篇文章带大家深入了解Angular中的依赖注入模式,分享依赖注入模式的应用和玩法案例,希望对大家有所帮助!
目录前言Promise.all基础学习Iterator 接口参数思路分析源码实现Promise.allSettled基础学习思路分析源码实现Promise.race基础学习思路分析源码实现Promise.any基础学习思路分析源码实现前言恰逢 Promise 也有四个很像的静态三兄弟(Promise.all、Promi
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
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备09006778号 域名注册商资质 粤 D3.1-20240008