2013-11-24 149 views
9

所以我在我的網站上有兩個特定的div。它們都具有相同的css屬性,但其中一個可以包含24個其他div。我希望所有這些div都被複制到另一個潛水中。 這是它的樣子:將div的內容複製到另一個div中

<div id="mydiv1"> 
    <div id="div1"> 
    </div> 
    </div id="div2> 
    </div> 
    //and all the way up to div 24. 
</div> 

<div id="mydiv2"> 
</div> 

所以我希望所有的24個div的withing爲myDiv1的被複制到mydiv2頁面加載時。提前

回答

13

首先,我們正在分配的div到變量(可選)

感謝

var firstDivContent = document.getElementById('mydiv1'); 
var secondDivContent = document.getElementById('mydiv2'); 

現在只需指定爲myDiv1的內容mydiv2。

secondDivContent.innerHTML = firstDivContent.innerHTML; 

DEMO http://jsfiddle.net/GCn8j/

完整代碼

<html> 
<head> 
    <script type="text/javascript"> 
    function copyDiv(){ 
     var firstDivContent = document.getElementById('mydiv1'); 
     var secondDivContent = document.getElementById('mydiv2'); 
     secondDivContent.innerHTML = firstDivContent.innerHTML; 
    } 
    </script> 
</head> 
<body onload="copyDiv();"> 
    <div id="mydiv1"> 
     <div id="div1"> 
     </div> 
     <div id="div2"> 
     </div> 
    </div> 

    <div id="mydiv2"> 
    </div> 
</body> 
</html> 
+0

不要忘記VAR firstDivContent等。將變量暴露給全局範圍是不好的做法 –

+3

這實際上不會工作,'innerHTML'返回的字符串不是對元素屬性的引用 –

+0

@EricHerlitz感謝您警告我'var's。 –

7

可以使用.ready()事件的jQuery

jQuery(document).ready(function() { 
    jQuery('.div1').html(jQuery("#div2").html()); 
} 

另外一個工作DEMO

2
var divs = document.getElementById('mydiv1').innerHTML; 

document.getElementById('mydiv2').innerHTML= divs; 
1

在jquery中的替代方法您可以使用clone並將其放入您的目標div。例如:

$('#mydiv1').clone().appendTo('#mydiv2'); 

複製#mydiv1#mydiv2

相關問題