如何在指定元素的后面插入元素,实现insertAfter的方法:(用原生js)
在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); } }
先找到该元素的父元素,然后判断该元素是否是最后一个元素,如果是最后一个元素就直接在父元素上appendChild,如果不是父元素,就找到该元素的下一个元素,然后在它的下一个元素之前用insertBefore插入。