1

当fancybox打开时,我想禁用滚动条的父窗口访问。我使用以下方法完成了与 shadowbox 类似的事情:

function SBopen() {
            document.body.style.overflow = "hidden";  //Hide navigation overflow when SB open
        }
        function SBclose() {
            document.body.style.overflow = "auto";  //Show navigation overflow when SB open
        }
        Shadowbox.init({
            handleOversize: "none",
            modal: false,  //false lets user click outside SB to close window
            onOpen: SBopen,
            onClose: SBclose
        });

但是我不确定如何使用fancybox 来实现这一点。我当前的 fancybox 初始化脚本如下所示:

  $(document).ready(function() {
    $(".fancybox-thumb").fancybox({
        padding : 2,
        modal : false,
        prevEffect  : 'fade',
        nextEffect  : 'fade',
        nextSpeed   : 'slow',
        prevSpeed   : 'slow',
        openSpeed   : 'slow',
        closeSpeed  : 'slow',
        helpers : {
            title   : {
                type: 'outside'
            },
            overlay : {
                opacity : 0.8,
                css : {
                    'background-color' : '#000'
                }
            },
            thumbs  : {
                width   : 50,
                height  : 50
            }
        }
    });
});

知道如何做到这一点吗?

提前致谢!

4

1 回答 1

14

将这些选项添加到您的脚本中:

  beforeShow: function(){
   $("body").css({"overflow":"hidden"});
  },
  afterClose: function(){
   $("body").css({"overflow":"visible"});
  }
于 2012-06-14T00:31:48.567 回答