Zum Inhalt springen

nicht aktive ebene

Erstellt am 19. Januar 2008 · 12 Antworten · letzte Antwort am 21. Januar 2008

Tags: Frage

ICEMANno1 ·

Servus alle zusammen,

ich hab folgendes vor:
http://2008.drk-badurach.de/menu_auswahl.jpg
Es wurde auf das Element "Katastrophenschutz" geklickt, dann auf "Technik und Sicherheit", welches nun aktiv ist.

Meine Frage ist nun, wie kann ich die Elemente im linken Menü, die auf der gleichen Ebene wie "Technik und Sicherheit" sind oder darüber, ausgrauen, ihnen also eine andere CSS Klasse zuweisen?

Vielen Dank schonmal für die Hilfe,
Dominik

just2b ·
ICEMANno1 schrieb

eigentlich ja, aber ich will ja nicht, dass sie immer grau sind...

sorry nicht verstanden

ICEMANno1 ·

ok, dann nochmal ganz von vorne.

die 1. Menüebene sind die Bilder, die oben horizontal stehen (Bereitschaft,Jugendrotkreuz, Katastrophenschutz, usw.). ".NO" bei dieser Menüebene ist normal rot und ".ACT" is das dunkelrot. Das funktioniert soweit.

Im Screenshot wurde "Katastrophenschutz" ausgewählt. Sodass jetzt links die 2. Menüebene angezeigt wird (Einsatz-Einheit, Technik und Sicherheit und Trinkwasser Aufbereitung). Zum jetzigen Zeitpunkt, wenn kein Element aus der 2. Ebene ausgewählt ist (".NO"), sind alle Schriftfarben noch schwarz.

Wenn dann, wie im Screenshot ein Element ausgewählt wird (bei uns "Technik und Sicherheit"), werden alle anderen in der 2. Menüebene grau, bekommen also eine andere CSS-Klasse und die Punkte auf der 3. Menüebene erscheinen.

jetzt besser erklärt?

Unbekannter Benutzer ·

Das ist zwar ein etwas unkonventioneller Fall, aber du kannst einfach mit der Condition
[treeLevel = 2] (musst du gegebenenfalls anpassen)

den Menü NO Zustand verändern, wenn man sich in der x. Ebene befindet.

Grüße
Christian

ICEMANno1 ·

😢
irgendwie läuft es heute gar nicht 🙁

naja, also ich hab folgenden code

# left_menu cObject
lib.left_menu = HMENU
lib.left_menu.wrap = <ul class="ebene_1">|</ul>
lib.left_menu.entryLevel = 1

lib.left_menu.1 = TMENU
lib.left_menu.1 {
  [treeLevel = 0]
  NO.allWrap = <li class="ebene_0_normal"> | </li>
  [treeLevel = 1]
  NO.allWrap = <li class="ebene_1_normal"> | </li>
  [treeLevel = 2]
  NO.allWrap = <li class="ebene_2_normal"> | </li>
  [treeLevel = 3]
  NO.allWrap = <li class="ebene_3_normal"> | </li>
  [treeLevel = 4]
  NO.allWrap = <li class="ebene_4_normal"> | </li>
  [treeLevel = 5]
  NO.allWrap = <li class="ebene_5_normal"> | </li>
  [else]
  NO.allWrap = <li class="ebene_else_normal"> | </li>
  [end]
  NO.stdWrap.htmlSpecialChars = 1
}
  
  # Second level menu-object, textual
lib.left_menu.2 = TMENU
lib.left_menu.2 {
    # Normal state properties
  NO.allWrap = <li class="ebene_2_normal"> | </li>
  NO.stdWrap.htmlSpecialChars = 1
    # Enable active state and set properties:
}

ich will mit den ganzen [treeLevel = ? ] erstmal nur herausfinden, auf welcher ebene ich bin, was aber schon einmal nicht klappt! jedes Element bekommt den allWrap "<li class="ebene_else_normal"> | </li>"

was mach ich mit den treeLevel - Bedingungen falsch?

ICEMANno1 ·

ok, hab ich geändert, immernoch das gleiche problem!
hier der neue code:

# left_menu cObject
lib.left_menu = HMENU
lib.left_menu.wrap = <ul class="ebene_1">|</ul>
lib.left_menu.entryLevel = 1

lib.left_menu.1 = TMENU
[treeLevel = 0]
lib.left_menu.1.NO.allWrap = <li class="ebene_0_normal"> | </li>
[treeLevel = 1]
lib.left_menu.1.NO.allWrap = <li class="ebene_1_normal"> | </li>
[treeLevel = 2]
lib.left_menu.1.NO.allWrap = <li class="ebene_2_normal"> | </li>
[treeLevel = 3]
lib.left_menu.1.NO.allWrap = <li class="ebene_3_normal"> | </li>
[treeLevel = 4]
lib.left_menu.1.NO.allWrap = <li class="ebene_4_normal"> | </li>
[treeLevel = 5]
lib.left_menu.1.NO.allWrap = <li class="ebene_5_normal"> | </li>
[else]
lib.left_menu.1.NO.allWrap = <li class="ebene_else_normal"> | </li>
[end]

lib.left_menu.1.NO.stdWrap.htmlSpecialChars = 1

  
  # Second level menu-object, textual
lib.left_menu.2 = TMENU
lib.left_menu.2 {
    # Normal state properties
  NO.allWrap = <li class="ebene_2_normal"> | </li>
  NO.stdWrap.htmlSpecialChars = 1
    # Enable active state and set properties:
}
Unbekannter Benutzer ·

doch funktioniert doch, nur wir natürlich nach unten immer überschrieben. Durch deine letzte Abfrage:

[treeLevel = 5]
lib.left_menu.1.NO.allWrap = <li class="ebene_5_normal"> | </li>
[else]
lib.left_menu.1.NO.allWrap = <li class="ebene_else_normal"> | </li>
[end]

kommt immer der else Fall zu stande, weil es nicht die 5 Ebene ist. Lass das mit else mal weg...

ICEMANno1 ·

sodele, hab geschaft und hier meine endversion

# left_menu cObject
lib.left_menu = HMENU
lib.left_menu.wrap = <ul class="ebene_1">|</ul>
lib.left_menu.entryLevel = 1

lib.left_menu.1 = TMENU
lib.left_menu.1.NO.stdWrap.htmlSpecialChars = 1
[treeLevel = 1]
lib.left_menu.1.NO.allWrap = <li class="ebene_1_normal"> | </li>
[treeLevel = 2] || [treeLevel = 3] || [treeLevel = 4] || [treeLevel = 5]
lib.left_menu.1.NO.allWrap = <li class="ebene_1_inaktiv"> | </li>
[end]
lib.left_menu.1.ACT < lib.left_menu.1.NO
lib.left_menu.1.ACT = 1
lib.left_menu.1.ACT.allWrap = <li class="ebene_1_normal"> | </li>

lib.left_menu.2 = TMENU
lib.left_menu.2.NO.stdWrap.htmlSpecialChars = 1
[treeLevel = 2]
lib.left_menu.2.NO.allWrap = <li class="ebene_2_normal"> | <hr></li>
[treeLevel = 3] || [treeLevel = 4] || [treeLevel = 5]
lib.left_menu.2.NO.allWrap = <li class="ebene_2_inaktiv"> | <hr></li>
[end]
lib.left_menu.2.ACT < lib.left_menu.2.NO
lib.left_menu.2.ACT = 1
lib.left_menu.2.ACT.allWrap = <li class="ebene_2_normal"> | <hr></li>

lib.left_menu.3 = TMENU
lib.left_menu.3.NO.stdWrap.htmlSpecialChars = 1
[treeLevel = 3]
lib.left_menu.3.NO.allWrap = <li class="ebene_3_normal"> | <hr></li>
[treeLevel = 4] || [treeLevel = 5]
lib.left_menu.3.NO.allWrap = <li class="ebene_3_inaktiv"> | <hr></li>
[end]
lib.left_menu.3.ACT < lib.left_menu.3.NO
lib.left_menu.3.ACT = 1
lib.left_menu.3.ACT.allWrap = <li class="ebene_3_normal"> | <hr></li>

wer das Ergebnis sehen will:
http://2008.drk-badurach.de
ist das "2008" desgin dann fertig, wird die Seite unter
http://www.drk-badurach.de
zu finden sein