frankx: childNodes nicht wie erwartet

Beitrag lesen

Hallo,

in u.g. Beispiel hab ich jedem "Knoten" eine ID verpasst. alert (window.document.childNodes[0].id] bringt dann erwartungsgemäß "html".

window.document.childNodes[0].childNodes[0] den "head",

aber

window.document.childNodes[0].childNodes[2] (_2_!!!) den "body".

und

window.document.childNodes[0].childNodes[0].childNodes[0] "undefinded"

aber

window.document.childNodes[0].childNodes[0].childNodes[1] (_1_!!) erst "link", obwohl doch <link> das erste (also nullte Element ist???)

und "logischerweise" dann erst bei ... childNodes[3] "script".

Mag mir einer erläutern, warum da immer einer ausgelassen wird?

Besten Dank,

Frankx

<html id="html">
 <head id="head">
  <link id="linkd" href="style1.css" rel="stylesheet" type="text/css">
  </link>

<script type="text/javascript" id="script">
   function knotenTest()
   {
    y = window.document.childNodes[0].childNodes[2].childNodes[3]; // ingesamt 7 im head ??? childNodes[6];
    yy = y.id;
    alert (yy);
   }
  </script>

<title id="title">
  </title>

<meta id="meta" http-equiv="Content-type" content="text/html; charset=utf-8">

</head>

<body id="body">
  <input id="input1" type="button" onclick="cssAendern()" value="css-src-ändern">
  <input id="input2" type="button" onclick="knotenTest()" value="alert-link-href">
 </body>

</html>