0

我之前搜索并发现了一些关于此的问题,但没有一个答案有效。当我单击图像外部时,我想要它做的不是关闭,而只是单击角落中的 X。

我尝试了很多不同的想法,有些只是在同一帧中打开图像,而有些则有效,只是现在角落里的 X 消失了,所以我根本无法关闭它。

让我最接近的是“modal:true”,但 X 使用它消失了。

这是我的页面,图片位于菜单中的“Fotografier”下:http: //esoxluciusdegothia.blogg.se

我为 Fancybox 提供的代码是:

<script type="text/javascript">
    $(document).ready(function() {
        $(".fancybox").fancybox();
    });
</script>

正如我所说,我尝试的大多数“答案”只是让图片在同一个窗口中打开,就像它是图片的直接链接一样。我希望他们弹出并获得导航按钮+关闭按钮

4

2 回答 2

2

对于 fancybox v1.3.x使用这些 API 选项:

<script type="text/javascript">
    $(document).ready(function() {
        $(".fancybox").fancybox({
           "hideOnOverlayClick" : false, // prevents closing clicking OUTSIE fancybox
           "hideOnContentClick" : false, // prevents closing clicking INSIDE fancybox
           "enableEscapeButton" : false  // prevents closing pressing ESCAPE key
        });
    });
</script>

...所以关闭fancybox的唯一方法是按下close按钮。

于 2013-03-10T18:57:04.787 回答
1

编辑:这个答案涉及fancyBox 2。请参阅JFK对fancyBox 1.3 方式的回答。

如果您查看 fancyBox 代码,您会注意到该modal设置只是一个快捷方式:

// 'modal' propery is just a shortcut
if (coming.modal) {
    $.extend(true, coming, {
        closeBtn   : false,
        closeClick : false,
        nextClick  : false,
        arrows     : false,
        mouseWheel : false,
        keys       : null,
        helpers: {
            overlay : {
                closeClick : false
            }
        }
    });
}

在您的情况下,您想要的是:

$('.fancybox').fancybox({
    helpers: {
        overlay: {
            closeClick: false
        }
    }
});
于 2013-03-10T15:54:00.700 回答