在FancyBox3中定位自定义基本模板中的类

时间:2017-11-09 04:53:08

标签: javascript jquery fancybox fancybox-3

我创建了一个自定义基本模板,如下所示:

baseTpl	:
'<div class="fancybox-container" role="dialog" tabindex="-1">' +
    '<div class="fancybox-bg"></div>' +
    '<div class="fancybox-inner">' +
        '<div class="fancybox-infobar">' +
            '<span data-fancybox-index></span>&nbsp;/&nbsp;<span data-fancybox-count></span>' +
        '</div>' +
        '<div class="fancybox-toolbar">{{buttons}}</div>' +
        '<div class="fancybox-navigation">{{arrows}}</div>' +
        '<div class="fancybox-stage"></div>' +
        '<div class="fancybox-social">' +
            '<button class="sharefb" title="Share FaceBook" data-share="hello"></button>' +
            '<button class="sharetwt" title="Share Twitter" data-share="hello"></button>' +
        '</div>' +
    '</div>' +
'</div>',

如何定位自定义类sharefb?因为我想动态更改数据共享属性。

谢谢!

2 个答案:

答案 0 :(得分:0)

您需要委托事件,您将使用父元素冒泡click事件,在我的情况下是正文:

$('body').on('click','.sharefb',function(){
   $(this).attr('data-share','new value');
});

答案 1 :(得分:0)

我发现我可以在opts中的fancybox实例中执行此操作:

afterShow : function( instance, current ) {
    $('.fancybox-social .sharefb').click(function(){
        //add your js here                        
    });