我有一些fancybox图像,但是锚链接是一个图像叠加元素,而不是直接包装图像。
因此,为了使弹性动画看起来像是来自图像,而不是来自屏幕的中心,我将不得不使用“orig”选项。
虽然我无法让它发挥作用,甚至打破了弹性动画。
HTML:
<div class="content-art"'.$scrollspy.'>
<img src="'.$item['thumb'].'" />
<div class="overlay">
<div class="btn-group">
<a class="btn-art btn-fullscreen" rel="gallery" href="'.$item['image'].'">Fullscreen view</a><br />
<a class="btn-art btn-moreinfo">more info</a>
</div>
</div>
</div>
使用Javascript:
$('.paintings-wrapper').find('.btn-fullscreen').fancybox(
{
orig : $(this).parents('.content-art').find('img'),
padding : 10,
autoWidth : true,
arrows : false,
closeBtn : false,
scrollOutside : true,
openSpeed : 350,
closeSpeed : 250,
openEffect : 'elastic',
closeEffect : 'elastic',
helpers : {
overlay : {
closeClick : true,
locked : true
}
}
});
更新
显然,只要我点击我的叠加元素,打开fancybox,叠加隐藏 - 这是有意义的,因为它只在悬停时可见 - 并导致fancybox从页面中心打开。
有没有可行的解决办法呢?