单击 Fancybox Overlay div 时如何防止默认设置?

Posted

技术标签:

【中文标题】单击 Fancybox Overlay div 时如何防止默认设置?【英文标题】:How to prevent default when clicking on Fancybox Overlay div? 【发布时间】:2011-10-07 04:22:02 【问题描述】:

当有人在 id 为“fancybox-overlay”的 div 上的内容弹出窗口之外单击时,我想保持 Fancybox 处于打开状态。换句话说,当用户在弹出窗口之外单击时,我不希望发生任何事情。有什么建议吗?

【问题讨论】:

【参考方案1】:

应该只在 API 中可用:http://fancybox.net/api

我看到了一些不同的隐藏选项,例如“hideOnOverlayClick”。将相关选项作为地图传递给 fancybox 函数,它应该可以按您的意愿工作。

$('.fancyLinks').fancybox(
  'hideOnOverlayClick': false
);

.fancyLinks 只是我编的一些选择器,放什么你的目标选择器。

适用于 Fancy box 的较新版本。试试这个 Fancybox v2 No Hide on Overlay Click - How?

【讨论】:

【参考方案2】:

如果有人想在新的fancybox 中执行此操作,它会稍微复杂一些,而且用途更广泛。

在这里您可以看到我将关闭按钮设置为 false 以使其不显示,然后我将叠加层设置为单击时不关闭并重置指针样式。

$('.fancyLinks').fancybox(               
    closeBtn:false, 
    helpers : 
        overlay : 
            closeClick : false,
            css : 
                'cursor':'default'
            
        
    
);

【讨论】:

或者您可以将其设置为“modal:true”并兼顾两者

以上是关于单击 Fancybox Overlay div 时如何防止默认设置?的主要内容,如果未能解决你的问题,请参考以下文章

PDF 文档不会在移动设备中的 fancybox 中打开,所以当我在这些设备中单击打开 PDF 时,我不想打开一个空白的 fancybox

在div中加载fancybox内容?

在每个页面加载时显示随机 DIV(对于fancybox modal)

Fancybox - 单击 iframe 上的链接,更新 URL 地址

在 fancybox 中,仅显示来自 lightbox 中特定 div 的照片

为啥我的fancybox 没有在$('.selector').click() 上打开?