2014-01-09 45 views
1

美好的一天,添加DIV到iframe主體

我想添加一個DIV標籤到iframe正文。 iframe的內容與我正在處理的網站位於同一個域中,所以這應該不成問題。

<div id="sampleDIV">whatever</div> 
<iframe id="custom-frame"></iframe> 

而在我的javascript代碼,我有:

// load up the the iframe with the data the user selected 
$('#custom-frame').attr("src", "/Custom/Data/" + data.id); 

// I can get find the body tag in the iframe like: 
var iframeBody = $("#custom-frame").contents().find("body"); 

var styleTag = iframeBody.append($('#sampleDIV')); 

* EDITED * 但當我查看源代碼,我沒有看到div標籤添加。當我在Chrome中檢查元素時,我看不到添加的DIV元素。

*編輯的零件II * 我糾正了標籤從DIV到IFRAME

我看不到我在做什麼錯了,也許就在這個盯着太久。

TIA,

COSON

+0

「查看源文件」:

這對我的作品。它只顯示從服務器下載的原始源代碼。如果你想看到事後修改過的DOM中的任何東西,你需要使用瀏覽器的開發工具。 – jmoerdyk

+0

您需要等待iframe內容加載 –

+0

我輸入的內容不正確。當文檔加載時,我使用Chrome中的Inspect Element查看文檔。 – coson

回答

4

您可以發佈完整的HTML是iframe?在上面的例子中,你有兩個div,代碼試圖添加到第二個div,而不是iframe。在瀏覽器不會顯示動態插入的元素或更改的屬性

<div id="sampleDIV">whatever</div> 
<iframe id="custom-frame" src="page2.html" width="500" height="500"></iframe> 


<script src="http://code.jquery.com/jquery-2.0.3.min.js"></script> 

<script> 
    $(function() { 
     var iframeBody = $("#custom-frame").contents().find("body"); 
     var styleTag = iframeBody.append($('#sampleDIV')); 
    }) 
</script> 
+0

這*做*工作。我想我一直盯着這太久了。 sampleDIV不在文檔中,因此它不起作用。我認爲它是。 – coson

+0

拯救生命.... –