HAllo!
Da ich selber seit einigen Tagen erfolglos an meinem neuesten Problem gearbeitet habe, würde ich gerne die Frage in die Runde werfen.
Stichwort ist: verschachtelte Listen erstellen mit TypoScript.
Das Menü habe ich vorher mit HTML/CSS problemlos funktionsfähig gemacht. Es sind drei MEnüebenen und es soll eine rollover-Aufklapp-Variante werden. Die manuelle HTML-Verschachtelung sieht wie folgt aus:
[HTML]<ul>
<!-- ###MENUESUBMARKER### go -->
<!-- PUNKT1 -->
<li> </li>
<!-- PUNKT2 -->
<li>
<ul>
<!-- PUNKT2 Sub1-->
<li> </li>
<!-- PUNKT2 Sub2-->
<li> </li>
<!-- PUNKT2 Sub3-->
<li> </li>
<!-- PUNKT2 Sub4-->
<li> </li>
</ul>
</li>
<!-- PUNKT3 -->
<li>
<ul>
<!-- PUNKT3 Sub1-->
<li>
<ul>
<!-- PUNKT3 Sub1 Sub1-->
<li> </li>
<!-- PUNKT3 Sub1 Sub2-->
<li> </li>
<!-- PUNKT3 Sub1 Sub3-->
<li> </li>
<!-- PUNKT3 Sub1 Sub4-->
<li> </li>
</ul>
</li>
<!-- PUNKT3 Sub2-->
<li> </li>
<!-- PUNKT3 Sub3-->
<li> </li>
<!-- PUNKT3 Sub4-->
<li> </li>
</ul>
</li>
<!-- PUNKT4 -->
<li>
<ul>
<!-- PUNKT4 Sub1-->
<li> </li>
<!-- PUNKT4 Sub2-->
<li> </li>
<!-- PUNKT4 Sub3-->
<li> </li>
<!-- PUNKT4 Sub4-->
<li> </li>
</ul>
</li>
<!-- ###MENUESUBMARKER### stop -->
</ul>
[/HTML]
Wenn ich jetzt den gleichen Aufbau mit TypoScript erreichen will muss ich theoretisch folgende Syntax eingeben:
[TS]
subparts.MENUESUBMARKER = HMENU
subparts.MENUESUBMARKER {
### ################################## erste Menüebene ################################## ###
1 = TMENU
1 {
expAll = 1
#öffnet das Listenelement für alle Einträge der ersten Ebene
NO.wrapItemAndSub = <li> |
}
### ################################## zweite Menüebene ################################## ###
2 = TMENU
2 {
#umschließt die 2. Ebene mit einer Liste und schließt danach das Listenelement der 1. Ebene
expAll = 1
wrap = <ul> | </ul></li>
#öffnet Listenelement für alle Einträge der 2. Ebene
NO.allWrap = <li> |
}
### ################################## dritte Menüebene ################################## ###
3 = TMENU
3 {
#umschließt die 3. Ebene mit einer Liste, schließt das Listenelement der Einträge von Ebene 2
wrap = <ul class="untersub"> | </ul></li>
expAll = 1
#umschließt alle Einträge dieser Ebene mit einem Listenelement
NO.allWrap = <li>|</li>
}
}
[/TS]
...oder??
Zumindest erscheint [u]mir [/u]das logisch. Allerdings, wenn ich mir den Quellcode anschaue, entwickelt sich dort eine unschlüssige Eigendynamik. <li>s werden mal geschlossen, mal nicht. Zum Beispiel wird das <li> für den ersten MEnüeintrag nicht geschlossen, für den zweiten aber (nach Einfügen des Untermenüs) schon, so wie es sein sollte.
Und solche unerklärliche Phänomene verunsichern dann einen newbee...
Weiß jemand Rat zur Lösung dieses Ansatzes?!
#angry#