简单的DOM cloneNode问题

时间:2014-08-19 00:40:33

标签: dom clonenode

使用cloneNode时,我有另一个相当简单的问题。我正在尝试使用java将li节点复制回自己的ul,我似乎无法找到它无法正常工作的原因。 我尝试了很多东西,但我不能为我的生活搞清楚。 我想要这个:

                        <ul id="mylist">
                            <li><h3>My Image:<img src="myImage.png"></h3></li>
                        </ul> 

看起来像这样:
<ul id="mylist"> <li><h3>My Image:<img src="myImage.png"></h3></li> <li><h3>My Image:<img src="myImage.png"></h3></li> </ul>

我正在使用此功能:

                        function myFunction(){
                                    parent=document.getElementById("myList");
                                    child=parent.getElementbyTagName("li")[0];
                                    clone= child.cloneNode(true);
                                    parent.insertBefore(clone,child);   
                        } 
                        </script>

不确定为什么它不起作用,我几乎完全从在线资源中提取代码。如果有人可以帮助解决我的新手问题,我将非常感激。

1 个答案:

答案 0 :(得分:0)

我经常发现,当从互换中复制javascript时,作者从未检查过他的代码是否输入错误,或者他们是故意鼓励一点理解。

这有效:

<ul id="myawesomelist">
  <li id="x"><h3>My awesome image:<img src="myawesomeimage.png"></h3></li>
</ul>

这是javascript:

function myawesomefunction()
{
 var myawesomeparent=document.getElementById('myawesomelist');
 var myawesomechild=myawesomeparent.getElementsByTagName('li')[0];
 var myawesomeclone=myawesomechild.cloneNode(true);
 myawesomeparent.insertBefore(myawesomeclone,myawesomechild);
}

这是我建造它的小提琴:

http://jsfiddle.net/g51n8sor/