2016-11-01 2 views
0

Ich habe Code HTML ii haben Problem mit diesem:Wie viele Kindknoten habe ich in Körper

<html><head></head><body><!--oneComment--><script src="index.js"></script><!--twoComment--></body></html> 

und ich habe Javascript-Code in index.js:

console.log(document.body.childNodes.length) //2 

Wenn ich diesen Code ausführen in Firefox in der Konsole erhalten 2, warum? Ich habe zwei Kommentare und ein Skript-Element im Körper. Zwei Commend und ein Skript ist 3 Knoten, also warum bekomme ich Log 2

Antwort

4

Ihr Skript ist vor dem zweiten Kommentar im DOM. Daher existiert der zweite Kommentar noch nicht, wenn dein Skript läuft und du nur noch zwei childNodes übrig hast: den ersten Kommentar und das Skript.

Vergleichen Sie das Ergebnis mit dem Ausgang:

window.onload = function () { 
    console.log(document.body.childNodes.length); 
}; 
Verwandte Themen