appendChild:

target.appendChild(newChild)

newChild作为target的子节点插入最后的一子节点之后

insertBefore:

target.insertBefore(newChild,existingChild)

newChild作为target的子节点插入到existingChild节点之前

existingChild为可选项参数,当为null时其效果与appendChild一样
insertAfter:

顾名思义,就是在node后面增加new node,但是没有现成的API提供调用,但也很容易的自己可以写:

function insertAfter(newEl, targetEl)
{
    var parentEl = targetEl.parentNode;
            
    if(parentEl.lastChild == targetEl)
    {
       parentEl.appendChild(newEl);
    }else{
       parentEl.insertBefore(newEl,targetEl.nextSibling);
    }            
}

silenceboy
1.1k 声望46 粉丝

coding for fun