由于某种原因,它只是没有运行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
和其他事件,而没有。
答案 0 :(得分:18)
我猜你忘了指定你正在使用的fancybox版本。
onComplete
是fancybox v1.3.x的回调选项,而fancybox-skin
类引入版本2.x,.....所以我假设您使用的是2.x版本,不是吗?
Fancybox v2.x选项是新的,与以前的版本不兼容; onComplete
(v1.3.x)选项的等效项现在是afterLoad
(v2.x)回调选项。
检查http://fancyapps.com/fancybox/#docs以获取fancybox v2.x的选项,方法和回调的完整列表
答案 1 :(得分:7)
afterShow
我认为它与Fabxybox 2中的onComplete
相当。
答案 2 :(得分: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
}
});
答案 3 :(得分: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
}
});
答案 4 :(得分:0)
使用 afterLoad 代替 onComplete