我用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?我觉得它没有。
答案 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