是否可以在页面加载时启动fancybox iframe?

时间:2014-10-14 17:16:32

标签: jquery fancybox fancybox-2

我用Google搜索" fancybox, open onload"整个下午,但没有一个答案似乎与我试图做的相符。我的fancybox设置如下: www.casedasole.it/fancybox/ 即它启动一个iframe。

fancybox website给出了Launch fancyBox on page load(第10点)的两个示例,但在这两种情况下都处理了图像。

我想要显示的框是带有文字的 iframe ,其中的链接在iframe中打开。 我发现了一种打开隐藏div作为fancybox窗口的方法(参见JSFiddle)。我得到了它的工作 - www.casedasole.it/fancybox/ok.html - 实际上它结合了启动iframe内容的两种方式 - 作为启动页面中的弹出式隐藏div,以及该页面的启动按钮启动实际的iframe(关闭div生成的窗口看)。

但是,打开onload的不是iframe - 所以其中的任何链接都会打开一个新页面。

那么,是否有人知道是否可以启动fancybox iframe onload?我觉得它没有。

1 个答案:

答案 0 :(得分:2)

这很简单。您只需使用type API选项(如

)指定要打开的内容类型
jQuery(document).ready(function ($) {
    $(".fancybox").fancybox({
        type: "iframe" // <-- whatever content : image, inline, swf, etc.
    }).trigger("click");
}); // ready

注意我们将.fancybox().trigger()方法联系起来。

上面的代码假设你的页面中有这个html:

<a class="fancybox" href="http://example.com">this link open external page on an iframe</a>

参见 JSFIDDLE


另一个选项,如果你不想像上面的例子那样有一个指向页面的链接,那就是以编程方式触发fancybox:

jQuery(document).ready(function ($) {
    $.fancybox({
        href: "http://example.com",
        type: "iframe" // <-- whatever content image, inline, swf, etc
    });
}); // ready

注意在这种情况下,您需要使用href API选项传递您要打开的网页的网址。

查看更新的 JSFIDDLE