如何从选择器解除fancybox的绑定

我有一个类的锚链接,用于标识要在fancybox上调用的类。 例:

some code here 

Fancybox绑定:

 $('.group').fancybox(); 

如果我想用$(’。group’)选择的元素取消绑定fancybox,我应该怎么做? 我尝试过removeClass('group')但它没有用。

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

您可以将类“nofancybox”添加到链接,此链接将被忽略

如果您想在javascript代码中执行此操作,您可以选择锚标记对象并删除该类。

给元素一个id并调用removeClass方法

 some code here 

Java脚本

  $(function(){ $("#noFancy").removeClass("group"); }); 

如果您可以访问HTML标记,为什么不将类更改为其他类似但具有相同CSS值的类。 那么你不需要执行代码来删除documentready上的类

HTML

 I dont want fancybox 

CSS

 .groupNormal { // Put the CSS for group class } 

这是一个对我有用的解决方案,但是从提问者想要的方式来看,它并没有解开fancybox。

首先,不要在节点上声明fancybox,而是将节点绑定到click事件:

 $(".classOfMiniImage").on("click", window.onImageMiniClicked); 

在处理程序中,您可以使用代码检查是否需要显示fancybox的条件,然后使用显式href引用显示它:

 window.onImageMiniClicked = function () { if () { $.fancybox({ 'href': , /* other options below */ 'transitionIn': 'elastic', 'transitionOut': 'elastic', 'speedIn': 600, 'speedOut': 600, 'overlayShow': true }); } } 

此外,如果您不再需要这些项目上的fancybox,您可以使用另一种方法并手动取消绑定此处理程序:

 $(".classOfMiniImage").off("click", window.onImageMiniClicked); 

希望它会帮助某人。