我们知道,在有appendChild插入节点的功能,但在应用上,两者之间存在一定的差异。

例如,我们希望在下面的div中插入子节点p:

nodenode

我们可以这样写(在测试某个情况时,请再记一次):
复制代码代码如下所示:

VaR的抗议= document.getelementbyid(测试);
无功节点= document.createelement(P);
newnode.innerhtml =这是一个测试;
从这里开始测试
方法的作用是: / /:
otest.appendchild(节点);
/ / insertBefore方法:
otest.insertbefore(节点、空);


通过上面的代码,你可以测试一个新的节点是节点div下创建的,而节点是该部的最后一个节点(如果你想看DOM,即可以通过IE开发者工具条插件,Firefox可以使用Firebug查看)

显而易见的是,通过这个例子,你可以知道,在appendchildhild可以插入节点操作。

在上面的例子中,有这样的代码:otest.insertbefore(节点、空),其中在2参数设置,第一个是appendChild相同,二是独特的,它不仅可以为空,也为:
复制代码代码如下所示:

VaR的抗议= document.getelementbyid(测试);
无功refchild = document.getelementbyid(X1);
无功节点= document.createelement(P);
newnode.innerhtml =这是一个测试;
otest.insertbefore(节点,refchild);


这个示例将在X1节点前面插入一个新节点。

或:
复制代码代码如下所示:

VaR的抗议= document.getelementbyid(测试);
无功refchild = document.getelementbyid(X1);
无功节点= document.createelement(P);
newnode.innerhtml =这是一个测试;
otest.insertbefore(节点,refchild。兄弟);


这个示例将在X1节点的下一个节点前面插入一个新节点。

它也可以如下所示:
复制代码代码如下所示:

VaR的抗议= document.getelementbyid(测试);
无功节点= document.createelement(P);
newnode.innerhtml =这是一个测试;
otest.insertbefore(节点、子节点的抗议。{ 0 });


这个例子将在第一个子节点的前一个新的节点,也可以通过改变子{ 0,1其他位置插入新的节点,…}

由于在可见的特点()方法是在现有的子节点前面插入新节点,但在案例一中,我们使用insertBefore()在子节点列表的末尾插入新节点的方法。在两种情况下,发现在()方法将节点,可以在子节点列表中的任何地方。

从这些例子中:
的作用是:()方法将在该节点的子节点列表的末尾一个新的子节点。
()方法的作用是:在插入一个新的节点,在节点的子节点列表中的任何位置。