本篇内容主要讲解“如何利用HTML、CSS实现的图片预览弹出层”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何利用HTML、CSS实现的图片预览弹出层”吧!
本篇效果利用HTML、CSS和Jq实现的图片点击预览功能,在预览时也可以点击切换图片。图片1为整体效果,图片2是点击图片1后出现被点击图片的预览图片的名称以及说明。
图片1
图片2
实现的代码:
html代码:
XML/HTML Code复制内容到剪贴板
<div id="ImageMain"> <img src="1img1.jpg"/><img src="1img2.jpg"/> <img src="1img3.jpg"/> <img src="1img4.jpg"/> <img src="1img5.jpg"/> <img src="1img6.jpg"/> </div>
<div id="ImageScaBg"></div>
<div id="ImageSca">
<div id="ImageContainer">
<img id="imgCenter" src="1img3.jpg"/>
<div id="imgLunbo"><img class="imgLunboItem" src="1img1.jpg"/></div>
</div>
<div id="ImageInfo">
<h4 id="imgName"></h4>
<p id="imgInfo"></p>
</div>
</div>
css3代码:
CSS Code复制内容到剪贴板
#ImageMain {
width: 630px;
height: 500px;
margin: 0 auto;
margin-top: 100px;
}
#ImageMain>img{
width:200px;
height:200px;
cursor:pointer;
float:left;
margin-left:10px;
margin-top:10px;
}
#ImageMain>img:hover{
opacity:0.8;
}
#ImageScaBg{
position:fixed;
background-color:#000;
top:0px;
left:0px;
opacity:0.6;
width:100%;
height:100%;
display:none;
}
#ImageSca{
position:absolute;
background-color:#333;
border:1px solid #ccc;
-webkit-border-radius:5px;
-moz-border-radius:5px;
border-radius:5px;
display:none;
}
#ImageContainer{
float:left;
text-align:center;
}
#ImageInfo{
float:left;
width:300px;
background-color:#fff;
-webkit-border-radius:0 3px 3px 0;
-moz-border-radius:0 3px 3px 0;
border-radius:0 3px 3px 0;
}
#imgName{
font: 15px "微软雅黑", Arial, Helvetica, sans-serif;
padding-left:10px;
font-weight:500px;
}
#imgInfo{
font: 13px "微软雅黑", Arial, Helvetica, sans-serif;
padding-left:10px;
color:#808080;
}
#imgLunbo{
height:80px;
position:absolute;
margin-left:50px;
}
.imgLunboItem{
width:76px;
height:76px;
margin-left:10px;
}
JQ的代码:
复制内容到剪贴板
var ImageScaHandler={
ImageMaxWidth:800,
ImageMaxHeight:600,
ImagePathJson:[{imgName:"预览弹出层测试图片1",imgPath:"1img1.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},
{imgName:"预览弹出层测试图片2",imgPath:"1img2.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},
{imgName:"预览弹出层测试图片3",imgPath:"1img3.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},
{imgName:"预览弹出层测试图片4",imgPath:"1img4.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},
{imgName:"预览弹出层测试图片5",imgPath:"1img5.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"},
{imgName:"预览弹出层测试图片6",imgPath:"1img6.jpg",imgInfo:"HTML图片预览弹出层测试图片-豪车图片集锦(图片均来自互联网)"}
],
Init:function(){
$("#ImageSca").css("width",ImageScaHandler.ImageMaxWidth 200 "px");
$("#ImageSca").css("height",ImageScaHandler.ImageMaxHeight 10 "px");
$("#ImageSca").css("top",($(window).height()-$("#ImageSca").height())/2 "px");
$("#ImageSca").css("left",($(window).width()-$("#ImageSca").width())/2 "px");
$("#ImageContainer").css("width",$("#ImageSca").width()-300 "px").css("height",$("#ImageSca").height());
$("#imgLunbo").css("width",$("#ImageSca").width()-300-100 "px").css("top",$("#ImageSca").height()-90 "px");
$("#ImageInfo").css("height",$("#ImageSca").height());
$("#ImageMain>img").click(function(){
ImageScaHandler.ChangeImage($(this));
});
ImageScaHandler.GetImage();
$("#ImageSca").click(function(event){
event.stopPropagation();
});
$("#ImageScaBg").click(function(event){
ImageScaHandler.Hide();
});
},
Show:function(){
$("#ImageSca").css("display","block");
$("#ImageScaBg").css("display","block");
},
Hide:function(){
$("#ImageSca").css("display","none");
$("#ImageScaBg").css("display","none");
},
GetImage:function(){
$("#imgLunbo").children().remove();
for(var i=0;i<ImageScaHandler.ImagePathJson.length;i ){
var mImage=document.createElement("img");
mImage.className="imgLunboItem";
mImage.src=ImageScaHandler.ImagePathJson[i].imgPath;
$("#imgLunbo").append(mImage);
mImage.onclick=function(){
$(".imgLunboItem").css("border","0px solid #000");
ImageScaHandler.ChangeImage($(this));
}
}
},
ChangeImage:function(target){
$("#ImageContainer>img").attr("src",$(target).attr("src"));
$("#ImageContainer>img").css("margin-top",100 "px");
ImageScaHandler.Show();
$(".imgLunboItem").css("border","0px solid #000");
for(var i=0;i<ImageScaHandler.ImagePathJson.length;i ){
if(ImageScaHandler.ImagePathJson[i].imgPath==$(target).attr("src")){
$("#imgName").html(ImageScaHandler.ImagePathJson[i].imgName);
$("#imgInfo").html(ImageScaHandler.ImagePathJson[i].imgInfo);
$($(".imgLunboItem")[i]).css("border","2px solid #efefef");
}
}
}
}
到此,相信大家对“如何利用HTML、CSS实现的图片预览弹出层”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。