Hallo.
Schön, wie man unschwer erkennen kann, wollte ich also die <p>-Tags dynamisch erscheinen lassen, und dann halt wieder weg (wie es in vielen Win-Hilfedateien [.chm] gemacht wird, das hier soll auch ein Ausschnitt sein, muss daher auch nur unter IE laufen ;-)
Ich habe mich jetzt auch mal dran verucht, und folgendes ist dabei raus gekommen:
<script type="text/javascript">
<!--
function expand(li)
{
var ps = li.getElementsByTagName("p")[0].style;
if(ps.display == "block"){ps.display = "none";}
else{ps.display = "block";}
}
//-->
</script>
<ul>
<li>
<a href="javascript:;" onclick="expand(this.parentNode); return false;">AAA</a>
<p style="display:none;">Text für AAA</p>
</li>
<li>
<a href="javascript:;" onclick="expand(this.parentNode); return false;">BBB</a>
<p style="display:none;">Text für BBB</p>
</li>
</ul>
Warum this nicht funktioniert, wenn es im href steht, weiß ich nicht, allerdings gibt es keine Probleme, wenn es in onclick steht.
Vorteil bei der Variante hier ist, dass du dir das Durchnummerieren sparen kannst.
Mit this.parentNode wird das übergeordnete li-Element übergeben, und mit li.getElementsByTagName("p")[0] auf das erste darin vorkommende p-Element zugegriffen, der Rest ist Routine.
Gruß
Norbert