如何从选择器解除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);
希望它会帮助某人。