Flo: Attributwert nach Knotentest

Hi,

wie greif ich denn eigentlich nach einem Knotentest auf den Wert eines Attributes zu? Als Beispiel nach einer Auslese über

var doc = document.getElementsByTagName("div");

dachte ich dass es über

doc[i].nextSibling.id

eigentlich der id-Wert des folgenden Tags ausgeworfen werden müsste.
Tut es aber nicht.

Für Tips ausserordentlich dankbar...

Flo

  1. Hmmm

    doc[i].nextSibling.getAttribute('id')

    geht auch nicht.

    Tschuldigung für das Postscriptum

  2. Hello out there!

    dachte ich dass es über
            doc[i].nextSibling.id
    eigentlich der id-Wert des folgenden Tags ausgeworfen werden müsste.

    Nein; die id-Eigenschaft des folgenden _Knotens_. Dieser muss kein Elementknoten sein!

    Sieh dir mal im DOM-Inspector des Firefox den Baum von

    <div></div>  
    <div></div>  
    <div></div>
    

    an und vergleiche ihn mit dem von

    <div></div><div></div><div></div>

    Du müsstest also abfragen, ob es überhaupt ein Elementknoten ist ('http://de.selfhtml.org/javascript/objekte/node.htm#node_type@title=nodeType'); wenn nicht, zum nächsten Sibling gehen.

    Aber warum willst du dich umständlich durch den Baum hangeln? Warum nicht einfach 'doc[i + 1].id'?

    See ya up the road,
    Gunnar

    --
    „Und [dieses Forum] soll […] auch ein Fachforum bleiben und kein Psychologieforum werden.“ (Kirsten Evers)
    1. Hi,

      Sieh dir mal im DOM-Inspector des Firefox den Baum an

      würd ich gerne, find ihn aber nicht. Sollte doch eigentlich unter Extras zu finden sein oder über <Strg>+<Shift>+<i>.

      Aber warum willst du dich umständlich durch den Baum hangeln? Warum nicht einfach 'doc[i + 1].id'?

      wollte ich, allerdings wird mir dann erzählt dass doc[i+1].id keine Eigenschaften besitzt, obwohl es das eigentlich sollte. Glaub ich jedenfalls

      Verwirrt...

      Flo

      1. Hello out there!

        wollte ich, allerdings wird mir dann erzählt dass doc[i+1].id keine Eigenschaften besitzt, obwohl es das eigentlich sollte.

        Dann machst du etwas falsch. Passt du auch auf, dass i nicht zu groß wird?

        Es muss gelten i + 1 < doc.length, also i ≤ doc.length - 2.

        See ya up the road,
        Gunnar

        --
        „Und [dieses Forum] soll […] auch ein Fachforum bleiben und kein Psychologieforum werden.“ (Kirsten Evers)
        1. Hi Gunnar

          Es muss gelten i + 1 < doc.length, also i ≤ doc.length - 2.

          Das wars. Ich Pfeiffe ich...

          Flo

    2. Hi Gunnar,

      hab jetzt den DOM Inspector und mir mal den Unterschied angesehen.
      Jetzt ist nahezu fast alles klar.

      Danke

      Flo