2016-07-04 56 views
-3

我有一個包含帶「firstHeadSection」id的div標籤的Iframe。添加js代碼在iframe中不起作用

iframe中被加載後,我這個代碼追加到iframe中:

<script> 
    $(window).on("resize", function(){ 
    alert($("#firstHeadSection").height()) 
    }) 
    </script> 

JS代碼會被插入,但之後我調整窗口,它提醒空。

jQuery包含在iframe中。

我該怎麼辦?

+3

[將內容插入到iframe中]可能的副本(http://stackoverflow.com/questions/ 21795761 /插入內容到iframe) –

+2

我們可能需要看到更多的JS/HTML關於如何插入我框架,你如何追加腳本等...... – somethinghere

+0

當你試圖引用它時,最有可能沒有id爲'firstHeadSection'的元素。確保你沒有輸入錯誤,並在iframe中驗證標記.. – Teemu

回答

0

你必須訪問主頁面,所以你必須預先「父母」。嘗試是這樣的:在$(窗口)(未測試)

parent.$.fn.resize(function() { 
    alert($("#firstHeadSection").height()); 
}); 
+0

iframe也被調整大小 - 這取決於,是的,但它確實收到這個事件,所以這不是真正的問題。 – somethinghere

0

你的代碼查找ID爲 「#firstHeadSection」 的對象,但IFRAME你要查詢其DOM這樣的:

<script> 
    $(window).on("resize", function(){ 
    alert($("#iFrameID").contents().find("#firstHeadSection").height()) 
    }); 
</script> 

我還沒有測試它...請發佈更多的代碼,以便能夠可靠地做到這一點...

+1

如果代碼是_inide_ iframe,那麼這是行不通的。在某些情況下,CORS也適用。我認爲我們需要更多的代碼才能在這裏提供幫助。 – somethinghere

+0

是的你是對的,但我認爲他的問題是在他正在尋找DOM對象的範圍內,我相信jQuery在iframe之外尋找它......他應該將iframe內部DOM作爲對象並查詢它,至少試一試... –

+0

可能是,但他也提到'在iframe被加載後,我將此代碼附加到iframe',它不排除這一點,但我們需要更多信息... – somethinghere