JQuery的
var thumb = $('.thumbContainer').find('.thumb');
thumb.on('click', function(e){
$('body').addClass('sidePanelOpen');
var newimgsrc = $(this).data('img');
$('.largeImgPanel').find('.lgimage').css("backgroundImage", "url("+ newimgsrc +")");
});
$('.sidePanelOpen #overlay').click(function(e){
$('body').removeClass('sidePanelOpen');
});
HTML
<body>
<div class="post">
<div class="imageContainer">
<div class="bigimg" style="background-image: url('http://www.cuteheaven.com/wp-content/uploads/2011/05/kitten-III.jpg');">
</div>
<div class="thumbContainer">
<ul>
<li>
<a href="#">
<div class="thumb" data-img="http://thumbs.dreamstime.com/z/small-kitten-13447096.jpg" style="background-image: url('http://thumbs.dreamstime.com/z/small-kitten-13447096.jpg'); vertical-align: middle; width:100px"></div>
</a>
</li>
<li>
<a href="#">
<div class="thumb" data-img="http://www.dumpaday.com/wp-content/uploads/2013/05/small-kitten.jpg" style="background-image: url('http://www.dumpaday.com/wp-content/uploads/2013/05/small-kitten.jpg'); vertical-align: middle;"></div>
</a>
</li>
</ul>
</div>
<div class="largeImgPanel">
<div style="z-index: 9200">
<div class="lgimage" style="background-image: url('___');"></div>
</div>
</div><!--./lg image panel-->
<div id="overlay"></div>
</body>
CSS
#overlay{
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #000;
z-index: -1;
opacity: 0;
visibility: hidden;
-webkit-transition: all 0.5s linear;
-moz-transition: all 0.5s linear;
-ms-transition: all 0.5s linear;
-o-transition: all 0.5s linear;
transition: all 0.5s linear;
}
.sidePanelOpen #overlay{
opacity: 0.9;
visibility:visible;
z-index: 9000;
}
.sidePanelOpen .largeImgPanel{
background: red;
width: 700px;
margin: 0 auto;
}
.bigimg{
height: 250px;
width: 250px;
background-size: cover;
background-repeat: no-repeat;
background-position: center center;
display: inline-block !important;
display: inline-block;
vertical-align: top;
box-shadow: 0 1px 1px #ececec;
transition: box-shadow .3s;
}
.thumb{
vertical-align: middle;
height: 70px;
width: 70px;
display: block;
background-color: #999999;
overflow: hidden;
background-size: cover;
}
大图像区域和缩略图区 - w ^母鸡用户点击图像时,它会在src中以全宽800px显示覆盖图和图像,而不是背景图像。
一直在努力使警报出现,但没有任何反应。问题是jquery没有做任何事情。尝试点击图像,它没有做任何事情。另外,不知道如何替换src而不是css backgroundImage。
更新 似乎如果我把lgimagePanel放在post div之外,它不会像预期的那样行为。无法弄清楚。随着你的帮助,我们感激。
'.largeImgPanel'','.thumbnail'不会出现包含在' html'? – guest271314 2014-09-04 14:55:37
@ guest271314 - oops已更正该代码。感谢您指出。在叠加显示后点击缩略图时,大面板会显示大图。 – joe 2014-09-04 15:16:03