Fancybox onComplete函数未运行

时间:2012-05-30 12:17:58

标签: jquery fancybox

由于某种原因,它只是没有运行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和其他事件,而没有。

5 个答案:

答案 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
}
});

Working example

答案 4 :(得分:0)

使用 afterLoad 代替 onComplete