谢谢这个答案,我有一种在页面加载时启动 fancybox iframe 的方法:http://www.casedasole.it/fancybox/A.html
这个答案展示了如何在启动 iframe 的页面中打开一个 fancybox iframe,其内容以 javascript 编码:http://www.casedasole.it/fancybox/B.html
有没有办法让 B 做 A 所做的事情 - 即在页面加载时启动自身?
注意:隐藏的 div 方法(see here)将不起作用,因为我需要能够在打开后在 iframe 内导航。
做就是了 :
var myContent = "..."; // html as option "B"
jQuery(document).ready(function ($) {
$.fancybox({
// API options as "B"
// build the iframe
content: '<iframe id="myFrame" class="fancybox-iframe" frameborder="0" vspace="0" hspace="0" src="about:blank"></iframe>',
afterShow: function () {
var oIframe = document.getElementById('myFrame');
var iframeDoc = (oIframe.contentWindow.document || oIframe.contentDocument);
iframeDoc.open();
iframeDoc.write(myContent);
iframeDoc.close();
}
});
}); // ready
See JSFIDDLE
Notice the myContent
变量包含full html
结构,包括DOCTYPE
, <html>
, <head>
an <body>
部分。尽管这不是强制性的,但它可以让您更好地控制初始(iframed)页面的设置。
还请注意我的jsfiddle我分离了基本内容(html
基本结构)来自自定义内容(<div>
如您的示例所示)出于整洁目的;)
Refs :
- 选项A:http://jsfiddle.net/8qp0Lr3z/1/
- 选项B:http://jsfiddle.net/qVrLr/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)