jquery - fancybox 内容未隐藏

标签 jquery css fancybox

我正在使用内联 Fancybox第一次,由于某种原因,我无法显示/隐藏 Fancybox 中的内容。

这是我的代码:

html

<a id="openUserDialogBox" href="#assocUserDialogBox">Click</a>

<div id="assocUserDialogBox">
  My content here
</div>

CSS

#assocUserDialogBox { width: 400px; text-align: center; padding: 20px; }

js

$('#openUserDialogBox').fancybox({
  'showCloseButton' : true,
  'enableEscapeButton' : true
});

以上代码正确打开 Fancybox 并显示内容。
问题在于,在单击 Fancybox 链接之前,内容并未隐藏在页面上。

如果我改变CSS:

#assocUserDialogBox { width: 400px; text-align: center; padding: 20px; display: none; }

这会隐藏主页中的内容,但也会隐藏 Fancybox 弹出窗口中的内容。

我在这里缺少什么?

最佳答案

您可能需要将其包装起来,如下所示:

<a id="openUserDialogBox" href="#assocUserDialogBox">Click</a>

<div style="display:none">
    <div id="assocUserDialogBox">
        My content here
    </div>
</div>

Fancybox 将获取 ID 与链接的 href 匹配的元素,该元素无法隐藏,因此必须将其包装在另一个隐藏的元素内。

如果内容包含按钮等内容,将 hideOnContentClick 设置为 false 也是一个好主意:

$('#openUserDialogBox').fancybox({
  'hideOnContentClick': false,
  'showCloseButton' : true,
  'enableEscapeButton' : true
});

关于jquery - fancybox 内容未隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9557844/

相关文章:

javascript - 如何修复 Flot js 上的 xaxis 标签

javascript - 将一个js文件包含到另一个在文档中编写的js文件中

html - CSS 两列布局,流体高度为 100%

css - 链接 Accordion 列表的 CSS 和 JS 文件 - 不能作为单独的文件运行

javascript - Flexslider 主图像在 fancybox 中打开

jquery - CSS - 仍然有边距和填充

javascript - 使用 `<span>` 技巧检测文本宽度时不包括空格

javascript - jQuery ajax解析JSON数据报错

jquery - 为什么背景颜色没有改变?

php - jQuery fancyBox YouTube视频不起作用