2017-08-09 171 views
0

我有我的fancybox关闭按钮diplay:无;当iframe打开时,我希望关闭按钮以x时间的延迟出现。完全像这样DEMO。 尽管它在here的早期版本的花式框中解决,但在fancybox-3它第一次工作,此后关闭按钮不会出现,直到我刷新页面。fancybox-3关闭按钮禁用/启用延迟不起作用

我用下面的JS代码延迟:

$(document).ready(function() { 
    setTimeout(function() { 
    $(".fancybox-button--close").show(); 
    }, 5000); 
}); 

任何想法?谢谢。

回答

1

这是你如何访问工具栏,并使其可见,如果需要的话:

$('[data-fancybox="images"]').fancybox({ 
    afterShow : function(instance, slide) { 
    setTimeout(function() { 
     instance.$refs.toolbar.show(); 
    }, 3000); 
    } 
}); 

演示 - https://codepen.io/anon/pen/oeWqrJ

但是,如果你想切换小关闭按钮,下面是一个例子:

$('[data-fancybox]').fancybox({ 
    toolbar : false, 
    smallBtn : true, 
    afterShow : function(instance, slide) { 
    setTimeout(function() { 
     slide.$slide.find('.fancybox-close-small').show(); 
    }, 3000); 
    } 
}); 

演示 - https://codepen.io/anon/pen/oeWqRJ

基本上,您可以从instance.$refs(对界面元素的引用的集合)或slide.$slide(内容的父元素)访问任何元素。