dom方法insertAfter的實現

看風景就發表於2017-06-26

在dom的原生api中,只用insertBefore,沒有insertAfter,藉助原有的api,可以模擬一個insterAfter。

function insterAfter(newElement,targetElement){
     var parent = targetElement.parentNode;
     if(parent.lastChild == targetElement){
           parent.appendChild(newElement);
     }
     else{
           parent.insertBefore(newElement,targetElement.nextSibling);
     }              
}
先找父級元素,若目標元素為最後一個元素,直接append到父級末尾,
如果不是,則利用insertBefore插入到目標元素的下一個元素的前面

相關文章