jquery - 如何以编程方式触发带有内联 div 的 fancybox?

标签 jquery fancybox

我想让当有人尝试提交表单时出现一个 fancybox。所以我得到了这个:

$('#login-form').submit(function(e) {
    $.fancybox({
        content: '<h2>Hello Fancybox</h2>',
        modal: true
    });
    return false;
});

效果很好,但我宁愿使用我的 div,也不愿尝试指定内容字符串中的所有 HTML。我可以用这个让它弹出

<div style="display:none" id="access-policy">
blah blah blah
</div>

相反?

最佳答案

对于 FancyBox v3 或更高版本,请参阅 this answer

对于旧版本:

您需要在 href 属性中设置 div ID。如果您在 content 属性中使用 $('#access-policy').show() ,那么您第二次打开此 fancybox 时将不会显示任何内容。

$('#login-form').submit(function(e) {
    $.fancybox({
        href: '#access-policy', 
        modal: true
    });
    return false;
});

HTML 中还必须是:

<div style="display:none">
    <div id="access-policy">
        blah blah blah
    </div>
</div>

:)

关于jquery - 如何以编程方式触发带有内联 div 的 fancybox?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5811415/

相关文章:

jquery fancybox 2.0.3 - 防止在 fancybox 外部单击时关闭

jquery - fancybox:图像+文本

javascript - 删除 JavaScript :ShowExternal in href

javascript - 使用 jQuery 选择器和 setSelectionRange 不是一个函数

javascript - 有人可以解释一下(e)在做什么以及目标对象吗?

javascript - 由于固定导航,增加顶部和底部边距 FancyBox v2

javascript - 我可以使用什么 javascript 代码/库从网页中包含的小型 iframe 打开浏览器窗口弹出窗口?

javascript - jQuery:递归过多且超出最大调用堆栈大小

jquery - 为什么动态添加列表项在 Chrome 和 Firefox 中有效,但在 IE8 中无效?

javascript - 如何打开 fancybox 内容中的链接 url?