FancyBox不再使背景变暗,在最近更新之前工作得很好

时间:2012-08-14 06:04:43

标签: javascript css

正如标题所说,fancybox不再变暗背景。它功能正常,但不会变暗。

我网站上的示例:http://www.remodeling-buffalo.com/gallery.php

我注意到的一件奇怪的事情是,如果我摆脱每个页面上调用的“jquery.easing.1.3.min.js”,它会随机修复自己。我可以确认它在过去一个月左右被调用的同一个脚本工作正常。

这可能是我的custom.js中导致问题的原因,但如果我完全删除它,问题就不会解决,这让我相信这不是问题。

以下是我拥有fancybox代码的文件:http://www.remodeling-buffalo.com/resource/js/filter-masonry.js

代码:

/* ---------------------------------------------------------------------- */
/*  Fancybox
/* ---------------------------------------------------------------------- */

(function() {

    // Images
    $('.fancybox').fancybox({
        'transitionIn'  : 'fade',
        'transitionOut' : 'fade',
        'titlePosition' : 'over'
    }).each(function() {
        $(this).append('<span class="zoom">&nbsp;</span>');
    });

    // Iframe
    $('.iframe').fancybox({
        'autoScale'     : false,
        'transitionIn'  : 'fade',
        'transitionOut' : 'fade',
        'type'          : 'iframe',
        'titleShow'     : false
    }).each(function() {
        $(this).append('<span class="zoom">&nbsp;</span>');
    });

})();

/* end Fancybox */

我只是不知道什么是错的,因为一切看起来都和以前一样,但为什么删除“jquery.easing.1.3.min.js”会随机修复问题?

不确定我在此处发布的其他内容可能有用,但这里是custom.js的位置:http://www.remodeling-buffalo.com/resource/js/custom.js

不知道可能导致问题的原因或我可以在这里发布什么来帮助。 javascript或控制台中没有任何错误信息弹出,所以我甚至无法弄清楚是什么问题。

非常感谢你们,我真的很感激,因为我几周来一直在强调这一点。

2 个答案:

答案 0 :(得分:3)

我看到你正在使用jQuery 1.8.0。 Fancybox 2与jQuery 1.8.0不兼容。降级到jQuery 1.7.2应该可以解决您的问题。

有关此特定问题,请参阅https://github.com/fancyapps/fancyBox/issues/339。似乎有一个PNG修复,因为fancybox_overlay.png是在7天前添加的:https://github.com/fancyapps/fancyBox/tree/master/source

答案 1 :(得分:0)

FancyBox site向您展示了如何执行此操作。请参阅“提示与技巧”下的“更改叠加颜色和不透明度”。简而言之,您将“helpers”元素添加到传递给fancybox的对象。

在你的情况下它应该是这样的:

$('.fancybox').fancybox({
    transitionIn  : 'fade',
    transitionOut : 'fade',
    titlePosition : 'over',
    helpers : {
        overlay : {
            opacity: 0.2,
            css : { 'background-color' : '#000' }
        }
    }
}).each(function() {
    $(this).append('<span class="zoom">&nbsp;</span>');
});