0

我最近编写了一个脚本,其中我需要一个元素在单击时移到顶部。我使用并且多年来一直在使用 onclick 函数中的以下代码:

this.parentNode.appendChild(this.parentNode.removeChild(this));

脚本不工作,所以我搞乱了代码,尝试了我以前从未做过的事情来修复它。我认为问题可能出在这行代码中。实际上,结果与它无关,但是当我在修补时,我注意到以下代码似乎执行相同的功能。

this.parentNode.appendChild(this);

据我所知,没有区别。前者对我来说感觉“更好”,但我不能说为什么。有实际区别吗?如果没有,我将开始使用后者并保存 18 个字符 :-)

4

1 回答 1

2

this不是 的孩子this
您需要从父节点中删除子节点。

但是,appendChild将从任何现有父级中隐式删除节点(元素不能有多个父级):

如果节点已经存在,则将其从当前父节点中删除,然后添加到新的父节点。

于 2011-05-27T02:42:20.277 回答