Zum Inhalt springen

TMENU_LAYERS - 2. Ebenen mit unterschiedliche n Offsets

Erstellt am 31. Juli 2007 · Noch keine Antworten

Tags: Frage

TobiasR ·

Hallo

Ich versuche ein TMENU_LAYERS Menu mit 2 Ebenen. Soweit funktioniert auch alles, allerdings ist das Menu so aufgebaut, das die DIVs für die 2. Ebene unterschiedliche X-Offsets benötigen.
Da es noch keine Version online gibt folgende Skizze:

1MM  2MM  3MM    4MM  5MM  6MM
 1mm  2mm  3mm  4mm  5mm  6mm

1MM steht für Menupunkt 1. Ebene, 1mm steht für den Block der 2.Ebene für Menupunkt 1.
Die ersten 3 Untermenüs sollen nach rechts verschoben sein, die 3 letzten nach links.
Ich hoffe man kann verstehen was ich meine.

Jetzt habe ich schon folgende Varianten ausprobiert:
1.) lockPosition_adjust mit optionsplit, aber lockPosition_adjust versteht anscheinend kein Optionsplit, oder?
2.) Mittels layer_menu_id dem umschliessenden DIV eine brauchbare ID zu geben, um den unterschiedlichen Offset mittels CSS zu regeln. Allerdings hat layer_menu_id = {TSFE:pid} keinerlei Wirkung. Habe auch keine Beispiele finden können wie man layer_menu_id verwenden kann.
3.) Versucht in den umschliessenden Table für die 2. Ebene die Augabe {TSFE:pid} als class name zu intergrieren, aber das funktioniert auch nicht. Siehe Code ganz unten.

Mein Typoscript sieht bisher so aus:

includeLibs.tmenu_layers = media/scripts/tmenu_layers.php

temp.glmenu = HMENU
temp.glmenu.1 = TMENU_LAYERS
temp.glmenu.1 {
  layerStyle = position:absolute;VISIBILITY:hidden;
  lockPosition = x
  lockPosition_adjust = 20
  topOffset=20
  leftOffset= 0
  relativeToTriggerItem = 1
  hideMenuWhenNotOver = 50
  hideMenuTimer = 300
  setFixedWidth = 96
  expAll=1
  wrap = <table id="menu1_table"><tr><td class="msid0"> </td>|</tr></table>
  NO {
    allWrap = <td class="menu1_td"> | </td>
    after.cObject = TEXT
    after.cObject.insertData = 1
    after.cObject.value = <td class="msid{register:count_MENUOBJ}"> </td>
  
  }
}

temp.glmenu.2 = TMENU
temp.glmenu.2 {
  wrap = <table class="menu2_table">|</table>
  NO.allWrap = <tr><td class="menu2_td"> | </td></tr>
}

Zu Punkt 3 sah mein Code so aus (nur 2.Ebene):

temp.glmenu.2 = TMENU
temp.glmenu.2 {
  wrap.insertData = 1
  wrap = <table class="menu2_table block{TSFE:pid}">|</table>
  NO.allWrap = <tr><td class="menu2_td"> | </td></tr>
}

Steh komplett auf der Leitung, kann mir da jemand weiterhelfen?