推荐使用“交换内容”<div id="m"> 
<div id="c1">c1</div> 
<div id="c2">c2</div> 
</div>
<input type="button" value="交换内容" onclick="myShift(document.getElementById('c1'), document.getElementById('c2'))"/>
<input type="button" value="重新创建" onclick="myShift(document.getElementById('c1'), document.getElementById('c2'))"/>
<script>
function myShift(obj1, obj2){
var temp = obj1.innerHTML;
obj1.innerHTML = obj2.innerHTML;
obj2.innerHTML = temp;
}function recreate(){
var obj = document.getElementById("c1");
document.getElementById("m").removeChild(obj);
document.getElementById("m").appendChild(obj);
}
</script>

解决方案 »

  1.   

    <script>
    function reverse1() {
    var parent=document.getElementById("m");
    var kids=parent.childNodes;
    var numkids=kids.length;

    for(var i=numkids-1; i>=0; i--) {
    var c=kids[i];
    parent.appendChild(c);
    }
    }
    </script><body>
    <div id="m"> 
    <div id="c1" style=" background-color:#0066CC; width:100px; height:100px;"> </div> 
    <div id="c2" style=" background-color:#999933; width:100px; height:100px;"> </div> 
    </div>
    <button onClick="reverse1();">Reverse</button>
    </body>
      

  2.   

    晕,写错了
    重新创建那里应该是
    <input type="button" value="重新创建" onclick="recreate()"/>调错方法了。
      

  3.   

    额  看来都不能直接交换顺序的 ie 支持swapNode 但ff不行 replaceChild表现也不佳用替换内容有个缺点 有的元素加上了onxxx的时间触发 换了内容就这些东西就没了