手动封装 insertAfter JS 函数

mac2026-08-05  8

我们知道 DOM 提供了 insertBefore 函数, 用于在已有的元素前插入一个新元素, 而 DOM 本身并没有提供一个 insertAfter 函数用于在已有元素后插入一个新元素, 可通过现有的 DOM 方法和属性自己手动封装一个 insertAfter 函数. 如下:

function insertAfter (newElement, targetElement){ var parent = targetElement.parentNode; if(parent.lastChild == targetElement){ parent.appendChild(newElement); }else{ parent.insertBefore(newElement, targetElement.nextSibling); } }

(newElement: 将被插入的新的元素, targetElement: 目标元素)

这个函数用到了以下 DOM 方法和属性 : 1, parentNode 属性: 返回某节点的父节点; 2, lastChild 属性: 返回选定元素的最后一个子节点; 3, appendChild 方法 : 向节点的子节点列表的末尾添加新的子节点; 4, insertBefore 方法 : 在已有的子节点前插入一个新的子节点; 5, nextSibling 属性 : 返回选定元素的下一个同级节点(在相同树层级中的下一个节点);

最新回复(0)