我有几乎和这里一样的问题:Fancybox 2: custom navigation
我需要一个自定义导航,就像来自fancyBox的带有自定义按钮的示例:http://jsfiddle.net/deseA/100/
如此一来,按钮就在图像上方。但是,当我将菜单附加到fancybox-inner时,当我单击下一个图像时,链接就消失了。我尝试了上述文章中的解决方案,但它不起作用。下面是我的代码:
$(".fancybox").fancybox({
nextEffect : 'fade',
prevEffect : 'fade',
padding : 0,
margin : [15, 15, 40, 15],
afterLoad : addLinks,
beforeClose : removeLinks
});
function addLinks() {
var list = $("#links");
if (!list.length) {
list = $('<ul id="links">');
for (var i = 0; i < this.group.length; i++) {
$('<li data-index="' + i + '"><label></label></li>')
.click(function() { $.fancybox.jumpto($(this).data('index')); })
.appendTo(list);
}
list.appendTo('.fancybox-inner');
}
list.find('li').removeClass('active').eq(this.index).addClass('active');
}
function removeLinks() {
$("#links").remove();
}发布于 2014-04-15 21:28:13
您可以尝试将list.appendTo('.fancybox-inner');行从if语句中移出。因此,function addLinks()将如下所示:
function addLinks() {
var list = $("#links");
if (!list.length) {
list = $('<ul id="links">');
for (var i = 0; i < this.group.length; i++) {
$('<li data-index="' + i + '"><label></label></li>')
.click(function() { $.fancybox.jumpto($(this).data('index')); })
.appendTo(list);
}
}
list.appendTo('.fancybox-inner');
list.find('li').removeClass('active').eq(this.index).addClass('active');
}https://stackoverflow.com/questions/19547708
复制相似问题