HTML:

       <ul>
        <li>1111111111</li>
        <li>2222222222</li>
        <li>3333333333</li>
        <li>4444444444</li>
    </ul>

js:

function swop(obj1,obj2){
        obj2.parentNode.insertBefore(obj1,obj2);
    }
var ul=document.getElementsByTagName("ul")[0];
swop(ul.children[1],ul.children[3] );//把2插到4的前面

result:

    1111111111
    3333333333
    2222222222
    4444444444
    

分析:
obj2.parentNode.insertBefore(obj1,obj2);
如果参数obj1不是字符串,而是一个已渲染的dom对象(ul.children[1]),那么进行插入操作时,会移动这个dom节点到指定的位置,而不是复制一个这个节点。


MDWfly
182 声望0 粉丝