改变fancybox大小

我用fancybox显示一个iframe。 在iframe的HTML中,我这样做:

 

然后在JS中我做了以下事项:

 $(".popup").fancybox({ padding : 0, closeBtn : false, autoSize : true, fitToView : false, beforeShow: function() { this.width = ($("iframe").contents().find("body").width()); this.height = ($("iframe").contents().find("body").height()); } }); 

“.popup”在哪里:

  

如果在iframe中我加载了另一个具有不同尺寸的HTML(比方说400×150),fancybox调整它的高度但不是它的宽度。

任何帮助将不胜感激!

编辑1

我第一次运行花哨的盒子时,“。fancybox-inner”div的样式就像这样

 width: 650px; height: 430px; 

然后,当我在iframe中导航时,“。fancybox-inner”div的样式就像这样

 width: 650px; height: 150px; 

但第二个HTML body标签是这样的

  

编辑2:

在这个答案中链接的这个解决方案的评论表明我这只适用于高度

好的,我最终使用fancybox版本:2.1.4(星期四,2013年1月10日)

在第1231行你会发现

 origHeight = body.height(); 

之后加上这个

 origWidth = body.width(); 

这自动调整高度和