2016-12-09 3 views
0

Dies ist Code von HTML.
Dieser Code funktioniert in Mozilla, funktioniert aber nicht in Chrome.Klonen kopiert keinen Eingabewert in Chrome, funktioniert aber in Mozilla

<!DOCTYPE html> 
<html> 
    <body> 
    <ul id="myList1"> 
     <li>Item 1</li> 
     <li>Item 2</li> 
    </ul> 
    <ul id="myList2"> 
     <li>Water</li> 
     <li> 
     <input id="files" name="files" type="file" /> 
     </li> 
    </ul> 
    <p>Click the button to copy an item from one list to another.</p> 
    <button onclick="myFunction()">Try it</button> 
    <p>Try changing the <em>deep</em> parameter to false, and only an empty LI element will be cloned.</p> 
    <script> 
     function myFunction() 
     { 
     var itm = document.getElementById("myList2").lastChild; 
     var cln = itm.cloneNode(true); 
     document.getElementById("myList1").appendChild(cln); 
     } 
    </script> 
    </body> 
</html> 

Antwort

0

Können Sie bitte Precise Ihre Frage ein bisschen mehr klar

+0

tun können, können Sie bitte nicht Kommentare wie Antworten posten? – PeterT

0

lastChild alle Knoten Kinder umfasst, einschließlich Text-Knoten. Also, was Sie bekommen haben, war kein Element, sondern ein Text-Knoten mit dem Zeilenumbruch und Leerzeichen zwischen und </ul>.

Was Sie wollen, ist das letzte untergeordnete Element, nicht der letzte untergeordnete Knoten.

, die Sie mit

function myFunction() 
{ 
    var itm = document.getElementById("myList2").lastElementChild; 
    var cln = itm.cloneNode(true); 
    document.getElementById("myList1").appendChild(cln); 
} 
Verwandte Themen