这是一款使用jQuery制作的炫酷带气泡缩略图的幻灯片画廊插件。插件中使用到的气泡缩略图滚动效果是来自于Manos Malihu,你可以在这里找到该插件: Manos Malihu’s thumbnail scroller 。
插件中使用的精美图片来自于花瓣。
HTML
顶部导航的html代码:
<div class="top_menu" id="top_menu">
<span id="description" class="description"></span>
<a id="back" href="#" class="back"><span></span>back</a>
<div class="info">
<span class="album_info">Album 1</span>
<span class="image_info"> / Shot 1</span>
</div>
</div>
插件中需要一个导航按钮能从幻灯片状态返回到缩略图状态,还需要一些描述信息。这些都放在顶部导航条中,当从幻灯片状态返回是,该导航条隐藏。
我们还需要一个loader元素:
<div id="loader" class="loader"></div>
所有的缩略图将使用一个包裹容器来放置,给包裹容器id为thumbnails_wrapper
和一个class为thumbnails_wrapper
。为了集成Manos的缩略图滚动插件,我们的html结构必须是多重滚动结构:一个class为tshf_container
的div代表一行缩略图。demo中注释掉了第二和第三行缩略图。
<div id="thumbnails_wrapper" class="thumbnails_wrapper" style="top:-255px;">
<!-- top:110px to show-->
<div id="tshf_container1" class="tshf_container">
<div class="thumbScroller">
<div class="container">
<div class="content">
<div>
<a href="#">
<img src="images/albums/album1/thumbs/1.jpg" alt="Description" class="thumb" />
</a>
<span></span>
</div>
</div>
<div class="content">
...
</div>
</div>
</div>
</div>
<div id="tshf_container2" class="tshf_container">
...
</div>
<div id="tshf_container3" class="tshf_container">
...
</div>
</div>
在上面的Html结构中,空的span
是被用来遮罩图片,使图片形成气泡形状。
点击缩略图的时候会出现一个黄色的圆形气泡,它的html代码如下:
<div class="bubble">
<img id="bubble" src="images/bubble.png" alt=""/>
</div>
幻灯片画廊的前后导航按钮的html代码如下:
<div id="preview" class="preview">
<a id="prev_image" href="#" class="prev_image"></a>
<a id="next_image" href="#" class="next_image"></a>
</div>
JAVASCRIPT
调用方法:首先引入js文件
<script type="text/javascript" src="http://libs.useso.com/js/jquery/1.4.3/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.easing.1.3.js"></script>
<script type="text/javascript" src="js/jquery.thumbnailScroller.js"></script>
定义一些必要的参数
var $thumbnails_wrapper = $('#thumbnails_wrapper'),
$thumbs = $thumbnails_wrapper.find('.tshf_container').find('.content'),
$top_menu = $('#top_menu'),
$header = $('#header'),
$bubble = $('#bubble'),
$loader = $('#loader'),
$preview = $('#preview'),
$thumb_images = $thumbnails_wrapper.find('img'),
total_thumbs = $thumb_images.length,
$next_img = $('#next_image'),
$prev_img = $('#prev_image'),
$back = $('#back'),
$description = $('#description'),
//current album and current photo
//(indexes of the tshf_container and content elements)
currentAlbum = -1,
currentPhoto = -1;
一开始先显示Loader元素,直到所有的缩略图加载完毕,才开始调用幻灯片画廊插件:
$loader.show();
//shows the main menu and thumbs menu
openPhotoAlbums();
jQuery和css代码请参考下载文件。