Utz Grimminger: «div» und «p»-Verschachtelung

Beitrag lesen

Hi zusammen,

ich baue gerade an einem Treeview herum und weiß jetzt nicht, ob ich einen Denkfehler drin hab oder ob NS 6 (ich weiß! ist noch ne Beta!) da was nicht richtig macht.

Das ganze funzt im Prinzip so:

<div id="parent" style="display:inline;">
<p>...irgendwas...</p>
  <div id="child" style="display:none;">
    <p>...Eintrag...</p>
    <p>...noch 'n Eintrag...</p>
      <div id="grandchild" style="display:none;">
        <p>...Eintrag...</p>
      </div>
    <p>...und noch einer...</p>
  </div>
<p>...irgendwas anderes...</p>
</div>

Das dazugehörige JS:

function showhide(target)
{
var abschnitt = document.getElementById(target);

if(abschnitt.style.display == "inline")
  {
    abschnitt.style.display = "none";
  }
else if(abschnitt.style.display == "none")
  {
    abschnitt.style.display = "inline";
  }
else
  {}
}

Was passiert ist, dass beim Zuklappen der mehrfach verschachtelten Abschnitte die Sache in die Hose geht - wenn ich allerdings die <p>...</p>-Tags um die Listeneinträge weglasse, klappt alles prima!
Offensichtlich wird mit </p> intern der div (so halb?) als möglicherweise schon zu Ende interpretiert, oder so.

Mach ich da jetzt nen Denkfehler und obige Konstruktion ist gar nicht zulässig? Oder sollte ich lieber einfach auf den endgültigen NS 6 warten?

Danke für jedwede sachdienlichen Hinweise! *g*

Grüße,

Utz