2013-10-15 52 views
1

我有下面的代碼是在我的DOM,我想要得到的#的高度iframe2如何使用純JavaScript

基本上訪問內部的iframe和iframe,我必須要改變的#iframe1每當高度#iframe2的高度發生變化。我已經添加了一個鏈接到下面的屏幕截圖,以瞭解我正在嘗試實現的內容。

http://i.imgur.com/y3lz3v4.png

<div id="gpt-leaderboard"> 
    <iframe id="iframe1"> 
     <iframe id="iframe2" > 
      <!-- Banner with dynamic height loads here--> 
     </iframe> 
    </iframe> 
</div> 

我使用下面的代碼,以獲得高度,但它不工作

document.getElementById("gpt-leaderboard").getElementsByTagName('iframe')[0].getElementsByTagName('iframe')[0].style.height; 

任何想法,爲什麼?

+3

'style =「高度:90px;「' –

+1

你想做什麼嵌套iframes沒有來源!? – rorypicko

+0

iframes有他們自己的文檔,所以你將不得不檢索,以查看它們。 iframe2嵌套在iframe1文檔中,而不嵌入iframe1標籤。 – jfriend00

回答

2

假設你的實現是你的兩個iframe嵌套在主頁面中,你試圖做的事情是行不通的。

當加載iframe1時,它將被默認爲空白文檔。這將意味着iframe2被刪除,因爲標記內的任何內容都將被替換。

只得到你的HTML正確的,你必須有你的第一個iframesrc屬性設置爲包含iframe2

編輯一個頁面:你可以在這裏使用jQuery看到一個方法的一個例子:http://jsfiddle.net/D9BX8/(注:我已經使用jquery而不是「原始JS」,因爲它就是我所知道的,我確信如果你不在你的網站上使用jquery,你可以把它翻譯成基本的JS)

+0

事情是我不能使用jQuery。我必須用純JS編寫它。使用jQuery會使它簡單得多:( – ujwaltrivedi

+1

jQuery只是一個庫,它仍然歸結爲標準的JS,你只需要弄清楚它是如何工作的,我只是一個例子,表明它可以做到,一次你確保你的HTML是正確的,並呈現。 – Lee