单击图库缩略图的建议?

时间:2011-07-06 10:37:59

标签: html css gallery thumbnails

我正在尝试使用缩略图和更大图像的显示来构建图库。目前,当鼠标悬停在显示较大图像的缩略图上时,它正在工作。但是,我希望用鼠标悬停替换悬停功能,这样当鼠标离开缩略图时,较大的图像不会消失。从一些研究中我可以相信,使用css不能像悬停功能那样做,而且我需要包含一些脚本。由于我是网络开发的新手,因此我有点失落,并会感激一些帮助。下面是gallery容器的html代码和相应的css代码......我从哪里开始?

由于 甲

html代码

<div class="gallerycontainer">

    <a class="thumbnail" href="#thumb"><img src="images/gallery/1one/101.jpg" width="56px" height="80px" border="0" /><span><img src="images/gallery/1one/101.jpg" width="405px" height="585px"/></span></a>

    <a class="thumbnail" href="#thumb"><img src="images/gallery/1one/102.jpg" width="56px" height="80px" border="0" /><span><img src="images/gallery/1one/102.jpg" width="405px" height="585px"/></span></a>

<a class="thumbnail" href="#thumb"><img src="images/gallery/1one/103.jpg" width="56px" height="80px" border="0" /><span><img src="images/gallery/1one/103.jpg" width="405px" height="585px"/></span></a>

<a class="thumbnail" href="#thumb"><img src="images/gallery/1one/104.jpg" width="56px" height="80px"border="0" /><span><img src="images/gallery/1one/104.jpg" width="405px" height="585px"/></span></a>

<br />

</div>

css代码

.gallerycontainer{
position: absolute;
/*Add a height attribute and set to largest image's height to prevent overlaying*/
}

.thumbnail img{
border: 1px solid white;
margin: 0 5px 5px 0;
}

.thumbnail:hover{
background-color: transparent;
}

.thumbnail:hover img{
border: 1px solid grey;
}

.thumbnail span{ /*CSS for enlarged image*/
position: absolute;
background-color: #000000;
padding: 5px;
left: -1000px;
border: none;
visibility: hidden;
color: black;
text-decoration: none;
}

.thumbnail span img{ /*CSS for enlarged image*/
border-width: 0;
padding: 2px;
}

.thumbnail:hover span{ /*CSS for enlarged image*/
visibility: visible;
top: 0;
left: 300px; /*position where enlarged image should offset horizontally */
z-index: 50;
}

2 个答案:

答案 0 :(得分:0)

您可以将jQueryblockUI插件一起使用:

<div class="gallerycontainer">
    <a class="thumbnail" href="#thumb" class="imgthumb"><img src="images/gallery 
        /1one/101.jpg" width="56px" height="80px" border="0" /></a>
    <a class="thumbnail" href="#thumb" class="imgthumb"><img src="images/gallery
        /1one/102.jpg" width="56px" height="80px" border="0" /></a>
</div>

然后您可以使用窗口onload事件附加onclick事件以使用blockUI触发大图像:

$(function(){
 $(".imgthumb").onclick(function() {
  $.blockUI({
   message: "<div><img src=" + $(this + " > img").attr("src") + " width='405' height='585' /></div>";
   css: { border: '1px solid grey'}    
  });
 });
});

答案 1 :(得分:0)

这是一个简单的jquery开始。

http://jsfiddle.net/8GKXM/

$('.thumbnail').each(function(){
    $(this).click(function() {
        $('.thumbnail span').hide();
       $(this).find('span').show('slow');
    });
});

这就是jquery基本上所说的:

在每个人的.thumbnail上点击:

隐藏.thumbnail跨度(如在找到的每个范围内) 然后 找到点击.thumbnail的跨度并显示


我可能会将更大的图像移动到他们自己的容器中......