2012-02-21 66 views
4

我已經看了許多答覆類似的問題的,我無法找到任何工作。我是新來的JavaScript,但已經得到了足夠遠,讓我的成績在iframe中顯示,但是當我嘗試建議的代碼:彩盒的iframe調整

$.colorbox({ ... url, iframe true, etc 

onComplete : function() { 
     $.fn.colorbox.resize(innerHeight); 
     } 

調整窗口大小以150pixels高。不管頁面的html是什麼。理想情況下,它會打開搜索結果的大小,然後我可以在每次運行新搜索時調用它,但我沒有找到任何可供參考的colorbox.resize()變體。納達。

任何援助將非常感激。

回答

1

你嘗試resize()沒有任何說法?它應該調整自己的自動計算。 但你也可以試試

$.fn.colorbox.resize({innerHeight:innerHeight}); 

檢查這個link以獲取更多信息。

+0

這個調整大小根據瀏覽器窗口大小,而不是內容的窗口。這是朝着正確方向邁出的一步,但不是一個大方向。不過謝謝,你有其他想法嗎? -Matt – user1223248 2012-02-22 09:37:21

14

如果你想根據iframe的內容來調整你的代碼來調整應該是I幀裏面的內容。因爲據我所知,只有iframe知道它包含的內容,而不是加載它的父窗口。 在你的Iframe內容把這個代碼在頭部分

<script type="text/javascript"> 
    function Resize_Box(){ 
     var x = $('body').width(); 
     var y = $('body').height(); 
     parent.$.fn.colorbox.resize({ 
      innerWidth: x, 
      innerHeight: y 
     }); 
    } 

    $(document).ready(function(){ 
     Resize_Box(); 
    }); 
</script> 

當iframe是滿載該代碼會被執行,你的彩盒窗口將被調整。 (請確保當您使用的家長和iframe同一域這個代碼只能)

+0

工作就像一個魅力,但爲什麼不能沒有標記爲接受的答案 – 2013-05-28 08:28:18