js:appendChild、insertBefore和insertAfter

web/Win8开发中经常要在js中动态增加一些element,就需要用到下面的一些方法:

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);
       }            
}

 

posted on 2013-04-09 21:24  老Zhan  阅读(11408)  评论(1编辑  收藏  举报