2011-12-21 75 views
1

我有一個由Fancybox加載的iframe。在iframe中,我加載了jQuery,以便我可以在iframe中獲得實際內容的適當高度$('html').height();使用iframe自動調整Fancybox的內容大小

  • 在FF,這似乎讓我調整IFRAME(和的fancybox)適當

  • 在Chrome中,這個值報告大約爲5px至20像素的短內容的實際高度。

  • 在IE 8中,報告的值是打開的fancybox窗口的初始高度,即使在後續刷新(iframe)時也是如此。

有越來越的iframe內容的高度,這樣我可以調整的fancybox外殼,因此用戶不會看到滾動條的更好的辦法?

回答

0

版本的fancybox的1.3有您可以使用內嵌框架適合其內容調整大小的方法:

$.fancybox.resize(); 

如果回憶供應,這有重裝的iFrame內容的副作用的影響。 如果您發現這種情況,請嘗試使用body標籤的高度來通知fancybox調整大小。

var height = $('body').height(); 
$('#fancybox-inner, #fancybox-wrap').height(height); 
+0

''。$ .fancybox.resize()'按照您的建議重新加載iFrame內容。 '$('body')。height()'沒有考慮iframe設置高度的事實,這會導致'body'保持這個高度。 – 2011-12-22 14:00:43

0

您是否在尋找

$(document).height() 

我嘗試使用$( 'HTML')。高度(),我得到了奇怪的值。

+0

'$(document).height()'至少對我來說,返回與$('html')。height()'相同的值,所以這不會工作: – 2011-12-22 13:57:34