下面的源代码由 Cristiano G. Carvalho 发布,以回答以下问题: 使用另一个用户创建的其他链接调用 fancybox gallery 。
<div class="details_gallery">
<a href="#" class="manualfancybox">Manual Call Fancybox</a>
<div class="details_gallery_min">
<a rel="details" href="max/1.jpg" class="fancybox"><img src="min/1.jpg" alt="" /></a>
<a rel="details" href="max/2.jpg" class="fancybox"><img src="min/2.jpg" alt="" /></a>
<a rel="details" href="max/3.jpg" class="fancybox"><img src="min/3.jpg" alt="" /></a>
<a rel="details" href="max/4.jpg" class="fancybox"><img src="min/4.jpg" alt="" /></a>
</div>
</div>
<script>
$(document).ready(function(){
$(".manualfancybox").click(function() {
var photos = new Array();
$(".details_gallery_min a").each(function(){
href = $(this).attr("href");
title = $(this).attr("title");
photos.push({'href': href, 'title': title})
});
jQuery.fancybox(photos ,
{ 'transitionIn' : 'elastic',
'easingIn' : 'easeOutBack',
'transitionOut' : 'elastic',
'easingOut' : 'easeInBack',
'opacity' : false,
'titleShow' : true,
'titlePosition' : 'over',
'type' : 'image',
'titleFromAlt' : true
}
);
});
});
</script>
它确实有效……如果您只有一个画廊(示例中为.details_gallery_min)。
我试图改变
$(".details_gallery_min a").each(function(){
到
$(".galleryone a, .gallerytwo a").each(function(){
但它仅适用于“.galleryone a”,当我单击名为“gallerytwo”的链接时,它会打开“galleryone”。我的 HTML 代码是正确的。
我的问题是:
如果我有多个链接打开不同的画廊,并且我想对所有画廊使用相同的行为(过渡、缓动等)怎么办?