Javascript 当用户按下Esc键时停止fancybox关闭

Javascript 当用户按下Esc键时停止fancybox关闭,javascript,jquery,fancybox,Javascript,Jquery,Fancybox,我在页面上使用fancybox,但我更多地将其用作设计特性,而不是jQuery模式。我试图阻止用户关闭它(因为它会“破坏”页面的设计)。我已成功阻止用户单击fancybox,但当按下Esc键时,我无法阻止它关闭。我尝试了“closeOnEscape”:false,但这似乎不起作用。下面是我的代码。关于我做错了什么或我需要做什么,有什么建议吗 $(document).ready(function () { $.fancybox({ 'width': '340px',

我在页面上使用fancybox,但我更多地将其用作设计特性,而不是jQuery模式。我试图阻止用户关闭它(因为它会“破坏”页面的设计)。我已成功阻止用户单击fancybox,但当按下Esc键时,我无法阻止它关闭。我尝试了
“closeOnEscape”:false
,但这似乎不起作用。下面是我的代码。关于我做错了什么或我需要做什么,有什么建议吗

$(document).ready(function () {
    $.fancybox({
        'width': '340px',
        'height': '100%',
        'autoScale': true,
        'transitionIn': 'none',
        'transitionOut': 'none',
        'type': 'iframe',
        'href': 'form.php',
        'hideOnContentClick': false,
        'closeBtn' : false,
        'helpers' : { 
            'overlay' : {
                'closeClick': false,
            }
        }
    });
});

从以下位置检查
选项:


定义用于库导航、关闭和幻灯片放映的键盘键
对象默认值:

只需将
close
值映射到
null


如果您使用的是fancyBox2,请将此属性添加到代码中:

$.fancybox({
  // all your other options here
  ...,
  keys : {
    close  : null
  }
}

@moonwave99为fancybox2提供了正确答案。 如果您使用的是v1.3+,则必须使用:

enableEscapeButton: false

Ref:

正如其他人在评论中提到的,
模态:true
工作非常完美

$.fancybox({
    modal: true
});

模式-如果设置为真,将禁用导航和关闭


您使用的是哪个版本的fancybox?这对您没有帮助,但如果您将其用作设计功能,则可能更容易构建类似的(视觉)API选项
modal
:如果设置为
true
,将禁用导航和关闭。您是否能够将我需要的代码合并到现有代码中?我对javascript或FancyBox没有任何经验奇怪的是,这个答案对我来说并不适用。我发现
modal:true,
在缩略图模式下关闭fancybox时,将close键设置为null会导致错误。而是将其设置为0以避免错误。
$.fancybox({
    modal: true
});