2010-08-17 59 views
1

我需要用另一个div替换一个div,我不知道该怎么做?有没有办法将一个div放在另一个div的顶部,然后让它透明?替换DIV?

+1

您正在使用哪个js框架? – fresskoma 2010-08-17 08:23:45

回答

11

简单。不需要框架/库。

parentNode.replaceChild(newNode, oldNode); 

如果你只有newNodeoldNode

oldNode.parentNode.replaceChild(newNode, oldNode); 
+0

只是要记住,'新'是一个无效的变量标识符,所以选择一个更好的为您使用:) – bcherry 2010-08-17 08:29:29

+0

谢谢。我刚刚意识到,当它使它变蓝时,我现在就会改变它:P – 2010-08-17 08:31:03

0

如果您需要更换另一个div的内容div的内容,你可以只是去

document.getElementById('div1').innerHTML = ... 

否则,如果您需要替换整个div,您可能需要使用包含要替换的父div并使用父属性的父div。

如果您需要更多帮助,请添加代码。

0

是ofcourse有一种方法放置一个div对方......你可以通过设置元素..这可以用B做的z-index属性做.. 和设置z-index的另一个高于第一个...然后根据需要,你可以给每个div的ID,并使其可见或隐藏.....

0

嘿Cinimozda,使用此div属性为特定的div玩捉迷藏游戏。我希望为你工作。复制并粘贴整个代码并在本地计算机上尝试。

<html> 
<head> 
    <style type="text/css"> 
    .divStyle { 
    width:200px; 
    height:100px; 
    margin:0px auto; 
    } 
    </style> 

<script language="javascript" type="text/javascript"> 
    function displayDiv(){ 
     var divstyle = new String(); 
     divstyle = document.getElementById("div1").style.display; 
     if(divstyle.toLowerCase()=="block" || divstyle == ""){ 
      document.getElementById("div1").style.display = "none"; 
      document.getElementById("div2").style.display = "block"; 
     } 
     else{ 
      document.getElementById("div1").style.display = "block"; 
      document.getElementById("div2").style.display = "none"; 

     } 
    } 
    </script> 
</head> 
<body> 
    <div id="div1" class="divStyle">Div One One One One 
    </div> 
    <div id="div2" class="divStyle" style="display:none;">Div Two Two Two Two Two 
    </div> 
    <center> 
     <input type="button" value="display Div" onclick="displayDiv()" /> 
    </center> 
</body> 
</html> 

全部最好!!!

0

使用.replaceWith

使用现代香草JS!比以前更好/更干净。例如:

target.replaceWith(element);