我正在制作一个网站,其中包含可“过滤”的照片网格。我打电话给fancybox:
$(".popbox").fancybox();
当图像被过滤掉时,它会被“禁用”一类。注意,页面没有重新加载。
<a class="popbox disabled" style="opacity: 0.3;">
<img alt="placeholder" src="_assets/images/placeholder.jpg">
</a>
如果有人点击禁用的图片,我怎么能这样做,fancybox不会激活?当更改过滤器并重新启用图像时,我还需要它再次工作。
答案 0 :(得分:2)
这是一种方法(demo):
$(function() {
$('.popbox').click(function() {
if (!$(this).is('.disabled')){
$.fancybox('<img src="' + $(this).attr('href') + '" height="333" width="500">');
}
return false;
});
});
更新:使用onStart
回调(demo)可能是更好的方法:
$(function() {
$('.popbox').fancybox({
onStart: function(link) {
if ($(link).is('.disabled')) {
return false;
}
}
});
});
答案 1 :(得分:0)
$('.popbox:not(.disabled)').fancybox();