Hallo zusammen,
Ich habe ein ernsthaftes Problem mit diesem Javascript-Popup-Menü für Typo3 (http://82.165.8.199/typo3cms/exotec-design.de/index.php?id=89)
Szenario:
mainMenu soll Ebene 0,1 und 2 anzeigen und subMenu soll Ebene 3,4 anzeigen
Ich schaffe es einfach nicht die Ebenen 3,4,5 und 6 aus dem mainMenu zu entfernen.
Beim löschen der Ebenen-TS-Tags (z.B. 3 < .2) ist das Menü nicht mehr korrekt, das heisst Seiten verschiedener Ebenen vermischen sich und es werden nicht mehr alle Menüpunkte angezeigt.
Ich wäre echt froh um etwas Expertenunterstützung.
Hier das Typoscript mainMenu:
# MAINMENU
# Menü einfügen
lib.mainMenu = HMENU
lib.mainMenu.excludeUidList = 13,14,15
lib.mainMenu {
entryLevel = 0
# Erste Menüebene (horizontaler Teil)
1 = TMENU
1 {
wrap = <ul class="menu" id="menu">|</ul>
expAll = 1
IFSUB = 1
IFSUB.allWrap = <li><div id="top">|</div><ul>
NO.linkWrap = <li><div id="top">|</div></li>
}
# Zweite Ebene (erster vertikaler Teil)
# ----> Alle folgenden sind identisch mit dieser
2 = TMENU
2 {
wrap = <font size="-2">| </ul></li></font>
expAll = 1
IFSUB = 1
IFSUB.allWrap = <li>|<ul>
NO {
linkWrap = <font size="-2"><li>|</li></font>
RO = 1
}
}
3 < .2
4 < .2
5 < .2
6 < .2
}
deep4 schriebBeim löschen der Ebenen-TS-Tags (z.B. 3 < .2) ist das Menü nicht mehr korrekt, das heisst Seiten verschiedener Ebenen vermischen sich und es werden nicht mehr alle Menüpunkte angezeigt.
Nimm einen sauberen TS-Code für ein Listenmenü (siehe Faq dieses Forums) und Du wirst diese Probleme nicht haben.
btw.: Über die Verwendung von font-tags in html will ich jetzt mal lieber nix weiter sagen... 😉
Was ist den an diesem Typoscript verkehrt (ausser den Font-Tags). Da dieses menü auf dem erwähnten Tutorial aufbaut würde ich es gerne so zum laufen bringen. Normalerweise müsste ich doch die übrschüssigen Ebenen einfach weglöschen können? Wieso um alles in der Welt funktioniert das hier nicht.
Wäre wirklich froh wenn die bisherige Arbeit nicht umsonst gewesen wäre.
deep4 schriebWas ist den an diesem Typoscript verkehrt (ausser den Font-Tags). Da dieses menü auf dem erwähnten Tutorial aufbaut würde ich es gerne so zum laufen bringen.
Es baut nicht darauf auf, sondern Du hast es in entscheidenden Punkten schlichtweg verändert und deswegen funktioniert es nicht sauber.
deep4 schriebNormalerweise müsste ich doch die übrschüssigen Ebenen einfach weglöschen können?
stimmt
deep4 schriebWieso um alles in der Welt funktioniert das hier nicht.
siehe oben...
Ich glaube nicht daß hier jemand mit Dir darüber diskutieren möchte, daß Du doch eigentlich alles richtig gemacht hast, wo Du doch selbst merkst, daß es schlichtweg nicht funktioniert.
Die einzigen Anpassungen welche ich "jetzt" noch drin habe sind statt "subparts.mainMenu" das templavoila "lib.mainMenu" und "lib.mainMenu.excludeUidList = 13,14,15" sonnst ist "jetzt" alles wie im Tutorial... Trotzdem derselbe Fehler.
Hier nochmals die angepasste Typoscriptversion:
# Menü einfügen
lib.mainMenu = HMENU
lib.mainMenu.excludeUidList = 13,14,15
lib.mainMenu {
entryLevel = 0
# Erste Menüebene (horizontaler Teil)
1 = TMENU
1 {
wrap = <ul id="menu">|</ul>
expAll = 1
IFSUB = 1
IFSUB.allWrap = <li><div id="top">|</div><ul>
NO.linkWrap = <li><div id="top">|</div></li>
}
# Zweite Ebene (erster vertikaler Teil)
# ----> Alle folgenden sind identisch mit dieser
2 = TMENU
2 {
wrap = | </ul></li>
expAll = 1
IFSUB = 1
IFSUB.allWrap = <li>|<ul>
NO {
linkWrap = <li>|</li>
RO = 1
}
}
3 < .2
4 < .2
5 < .2
6 < .2
}
Dein TMENU-code ist nach wie vor in Bezug auf das gewünschte Listenmenü kompletter Humbug, sorry.
Bitte selber vergleichen -> /faq/menu-bulletlist
Tut mir leid gefragt zu haben, ich habe nicht gewusst dass hier nur über die Sachen welche bereits gelöst wurden diskutiert wird. Dies ist ein anderer Lösungsansatz mit einem JS-Popupmenü mit 6 Ebenen
Hier ein Link zum Beispiel:
http://dosimple.ch/articles/Menus-dynamiques/menuHorizontal.html#menu
Ich weiss dass das nicht euer Beispiel ist, aber dies ist doch ein Typo3-Forum und keine Recyclinggesellschaft!
Bitte nur ernsthafte Lösungsvorschläge posten.
Herzlichen Dank im Voraus
deep4 schriebTut mir leid gefragt zu haben, ich habe nicht gewusst dass hier nur über die Sachen welche bereits gelöst wurden diskutiert wird. Dies ist ein anderer Lösungsansatz mit einem JS-Popupmenü mit 6 Ebenen
Hier ein Link zum Beispiel:
http://dosimple.ch/articles/Menus-dynamiques/menuHorizontal.html#menu
Ich weiss dass das nicht euer Beispiel ist, aber dies ist doch ein Typo3-Forum und keine Recyclinggesellschaft!
Entschuldige bitte, aber wenn Du nicht verstehen willst, daß Dein Beispiel exakt ein Listenmenü ist, für das Du genau den vorgeschlagenen Basiscode für ein TMENU brauchst, dann kann Dir wirklich niemand helfen.
deep4 schriebBitte nur ernsthafte Lösungsvorschläge posten.
Bitte nur Fragen posten, wenn man bereit ist, klare Lösungen auch anzunehmen.
In diesem Sinne.
Viel Spaß noch mit Deinem Phantasie-TS... 😉
Ich habe die Lösung, welche du vorgeschlagen hast, bereits vor dem letzten Post ausprobiert, und es gab kein POP-Up-Menü sondern ein einebniges normales Menü. Dieses TS funktioniert mit dem Javascript scheinbar noch weniger, denn das Menü läuft eigentlich bereits nur die Beschränkung auf ebene 0,1,2 läuft nicht. Also, kennt dieses Beispiel irgendjemand in diesem Forum?
Ich spreche nicht umsonst von Basiscode. Hierbei geht es hauptsächlich um die beiden folgenden wraps aus dem Beispiel:
...
...
wrap = <ul>|</ul>
NO {
...
wrapItemAndSub = <li>|</li>
...
}
...
Die stellen sicher, daß Deine Liste sauber verschachtelt wird. Anders wird das bei mehreren Ebenen nix.
So. Und nun kannst Du die wraps ergänzen wie Du lustig bist. Aber Du darfst sie niemals löschen, bzw. die ul oder/und die li tags anders setzen.
Herzlichen Dank für deine Bemühungen theo. Ich habe nun das Problem mit einem komplett neuen TS gelöst.
So sieht die funktionale Lösung für zwei Ebenen aus.
lib.mainMenu= HMENU
lib.mainMenu{
excludeUidList = 13,14,15
entryLevel = 0
# erstes level
1 = TMENU
1.wrap = <ul class="menu" id="menu">|</ul>
1{
expAll = 1
# no state: normale Formatierung
NO{
wrapItemAndSub = <li><div id="top">|</div></li>
}
# act state: gültig von der rootseite bis zur aktuellen Seite
ACT=1
ACT{
wrapItemAndSub = <li><div id="top">|</div></li>
}
# cur state: gültig für die aktuelle Seite
CUR=1
CUR{
wrapItemAndSub = <li><div id="top">|</div></li>
}
# ifsub state: gültig für seiten die unterseiten haben
IFSUB=1
IFSUB{
wrapItemAndSub = <li><div id="top">|</div></li>
}
}
# zweites level
2 = TMENU
2.wrap = <ul>|</ul>
2{
expAll = 1
NO{
wrapItemAndSub = <li>|</li>
}
ACT=1
ACT{
wrapItemAndSub = <li>|</li>
}
CUR=1
CUR{
wrapItemAndSub = <li>|</li>
}
IFSUB=1
IFSUB{
wrapItemAndSub = <li>|</li>
}
}
}
:p