我已尝试了很多方法在Fancybox 2.1.5中设置iframe
大小,主要是从堆栈溢出的其他问题中获取的想法,但似乎没有任何效果。相反,在点击链接(动态生成)时,iframe
会打开非常小的(300 x 150px
)。我可以看到.fancybox-inner
具有正确的宽度和高度,但实际的iframe没有没有宽度/高度属性。链接的目标始终是PDF,而不是HTML页面。
这是我的代码:
$(".homebox a.fancybox").click(function(e) {
e.stopPropagation();
$.fancybox({
href: $(this).attr('href'),
fitToView: false,
autoSize: false,
autoDimensions: false,
width : 600,
height : 900,
type :'iframe'
});
e.preventDefault();
});
任何想法都非常感激。 (注意:我使用e.stopPropagation()
,因为a.fancybox
链接实际上是另一个链接的子项。)
答案 0 :(得分:0)
我的猜测是fancybox在iframe内容完全加载之前计算大小,因此尺寸较小。
尝试在您的脚本中将iframe preload
设置添加到false
,如:
$(".fancybox").on("click", function (e) {
$.fancybox({
href: this.href,
fitToView: false,
autoSize: false,
// autoDimensions: false, // this is for fancybox v1.3.x
width: 600,
height: 900,
type: 'iframe',
iframe: {
preload: false
}
});
return false;
});
参见 JSFIDDLE
PS。我不建议在其他链接中嵌套链接。总会有更好的设计选项来满足您的需求。我的5¢