我想让 fancybox 尺寸与“手动创建”iframe 的内容大小相匹配。
我试过这个:http://jsfiddle.net/ystLD/3/
但是它不起作用,现在我有点卡在这里了。
有人知道怎么做吗?
谢谢。
最佳答案
“手动创建”的 iframe
的缺点是 fancybox 并不真正知道正在处理的内容的类型
。我宁愿使用选项 type: "iframe"
打开 fancybox。
然后,我认为您可以根据 iframe
的内容重新调整 fancybox 大小的唯一方法是对 iframe
中打开的页面内的尺寸进行硬编码>,在 html
、body
或像
<html style="width: 800px; height: 650px;">
然后您可以使用 beforeShow
回调来获取 iframe
的尺寸,例如
beforeShow: function(){
this.width = $('.fancybox-iframe').contents().find('html').width();
this.height = $('.fancybox-iframe').contents().find('html').height();
}
如果您不拥有打开的页面并且无法对其尺寸进行硬编码,您仍然可以尝试获取该页面的 innerWidth()
和 innerHeight()
html
或 body
标签,但它可能确实有问题,正如您在 forked fiddle 中看到的那样
这是对其他人有效的答案 https://stackoverflow.com/a/10776520/1055987
关于jquery - 如何使 fancybox 调整大小以自定义创建的 iframe 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12190079/