如何摧毁Fancybox?

我正试图摧毁Fancybox 。 我没有找到任何方法在文档中这样做。 如何在初始化后销毁它?

这不起作用:

$("a").unbind('fancybox').unbind('click'); 

测试代码: http : //jsfiddle.net/martinba/yy3cw/2/

我使用当前版本2.1.4。

为了取消绑定fancybox,您必须从document取消绑定fb-start命名空间下的事件:

 $(document).unbind('click.fb-start'); 

虽然,我不知道为什么开发人员如此不明显。

http://jsfiddle.net/dfsq/yy3cw/16/

试着打电话:

.unbind('click.fb')取消绑定fancybox。

喜欢:

 $('.group').unbind('click.fb') 

您可以通过运行来取消绑定每个花哨的框:

 $(document).unbind('click.fb-start'); 

或者,如果您需要取消绑定特定选择器,您可以取消它:

 var selector = 'a.my-fancy-box'; selector = selector + ":not('.fancybox-item, .fancybox-nav')"; $(document).undelegate(selector, 'click.fb-start'); 

或者:

 // Bind $('a.my-fancy-box').fancybox({live: false}); // Unbind $('a.my-fancy-box').unbind('click.fb'); 

正如前面提到的那样: $(document).unbind('click.fb-start'); 但您也可能希望将此选项添加到fancybox init调用: live:false