insertBefore:在已有元素前插入一个新元素
- 新元素:插入的元素(newElement)
- 目标元素:新元素插入到哪个元素(targetElement)之前
- 父元素:目标元素的父元素
调用语法:targetElement.parentNode.insertBefore(newElement, targetElement)
insertAfter实现:在现有元素后插入一个新元素
function insertAfter(newElement, targetElement){
var parentElement = targetElement.parentNode; // 获取父元素
// 判断targetElement是否为父元素最后一个子元素
if(parentElement.lastChild === targetElement){
// 父元素直接插入新元素
parentElement.appendChild(newElement);
}else{
// 往目标元素的下一个兄弟元素前面插入新元素
parentElement.insertBefore(newElement, targetElement.nextSibling);
}
}