6

由于某种原因,它只是没有运行该onComplete功能。但是它确实加载了fancybox div。我的html:

<ul>
    <li class="orange">

           #1 <a href="#text">click here</a>

           <div id="text" class="text">text text text</div>

    </li>
</ul>

我的jQuery:

 jQuery('li a').fancybox({       
    'autoDimensions':   'false',
    'width' :   631,
    'height':   256,        
    'onComplete':function(){

        alert('running');
        jQuery('.fancybox-skin').css('background-color',colour);
    }
});

警报不运行。我也尝试将事件函数更改为onClosed和其他事件,但什么也没有。

4

5 回答 5

18

我猜你忘了指定你使用的是什么版本的 fancybox。

onComplete是fancybox v1.3.x 的回调选项,而fancybox-skin 该类是在2.x 版之前引入的,.....所以我假设您使用的是2.x 版,不是吗?

Fancybox v2.x 选项是新的,与以前的版本不兼容;(v1.3.x) 选项的等效onComplete项现在是afterLoad(v2.x) 回调选项。

查看http://fancyapps.com/fancybox/#docs以获取 fancybox v2.x 的选项、方法和回调的完整列表

于 2012-05-30T16:55:47.030 回答
7

afterShow我认为与onCompleteFabxybox 2中的适当等价物

于 2013-04-26T07:18:42.393 回答
2

Fancybox 版本 2 不支持onComplete. 它使用afterLoad.

jQuery('#tips li a').fancybox({       
    'autoDimensions':   'false',
    'width' :   631,
    'height':   256,        
    afterLoad:function(){

        alert('running');
        jQuery('.fancybox-skin').css('background-color',colour); // colour to 'red' for example. typo
    }

});
于 2012-11-15T16:09:40.740 回答
0

好像错字

jQuery('#tips li a').fancybox({       
'autoDimensions':   'false',
'width' :   631,
'height':   256,        
'onComplete':function(){

    alert('running');
    jQuery('.fancybox-skin').css('background-color',colour); // colour to 'red' for example. typo
}
});

工作示例

于 2012-05-30T12:24:46.093 回答
0

使用afterLoad而不是onComplete

于 2018-05-24T12:55:07.183 回答