Hallo,
ich habe ein simples Menü und doch ein größeres Problem damit. Denn ich benötige die leveluid, also die uid der übergeordneten Seite als CSS Selector in der nächsten Menüebene.
Mein Beispiel funktioniert so leider nicht, aber es ist daraus sicher ersichtlich, was ich meine. Das Konstrukt ist so nötig, weil ich ein Klappmenü, ähnlich wie hier im Beispiel benötige. http://www.kunzmann.de/de
Hat jemand einen Tipp für mich? Oder gibt es vielleicht sogar eine Extension für ein solches Menü? Danke unud Gruß,
Detlef
temp.nav_main = HMENU
temp.nav_main {
special = directory
special.value = 1
1 = TMENU
1 {
expAll = 1
collapse = 0
noBlur = 1
wrap = <ul id="nav-main">|</ul>
NO = 1
NO {
wrapItemAndSub = <li class="show{field:uid}">|</li>
wrapItemAndSub.insertData = 1
ATagBeforeWrap = 1
}
}
2 < .1
2 {
wrap = <div class="panel{leveluid:-1">|</div>
NO {
wrapItemAndSub = <div class="group"><ul><li>|</li></ul></div>
linkWrap = <h3>|</h3>
ATagBeforeWrap = 0
}
}
3 < .2
3 {
wrap = <ul>|</ul>
NO.wrapItemAndSub = <li>|</li>
NO.linkWrap = |
}
}
wrap = <div class="panel{leveluid:-1">|</div>
Zwar nicht getestet, aber hier würde ich mal versuchen den dataWrap zu benutzen.
Schau mal oben, so stehts doch schon drin 🙂
...funktioniert eben nicht.
ich möchte jQuery verwenden und .panelXX mit der class .showXX Ein-/Ausblenden. Nur bin ich kein jQuery-Experte, aber es müsste irgendwie eine Funktion geben, die nicht explizit einen selector, sondern ein Kind-Selector, ausgehend von showXX ansprechen könnte. Dann brauche die dynamische classe .panelXX nicht. Weis nur noch nicht wie..
Hallo dfluess,
hast du da eine Lösung gefunden? Habe ein ähnliches Problem und bin aktuell am verzweifeln.
Versuchs damit, da brauchst Du keinen eindeutigen selector
$(function () {
var dlg = $('#dialog').dialog({
autoOpen: false,
modal: true
});
$('#example > li').click(function () {
var html = $(this).find('.content').html();
dlg
.html(html)
.dialog('option', 'title', $(this).find('h2').text())
.dialog('open');
});
});
http://jsbin.com/alojag/1/edit
Hallo dfluess,
danke für deine Antwort. Leider nützt mir das nichts, weil ich eben nur ein ähnliches Problem habe.
Ich verwende für Unterseiten eine "Singleseiten-Lösung". Das heißt ich habe mehrere Hauptpunkte, die beim Klicken einen neuen Seitenaufruf starten und alle Unterseiten dieses Menüpunktes sind dann auf einer Seite dargestellt und beim Klick auf die Navigation der 2 Ebene wird dann mit jQuery zum entsprechenden Anker gescrollt.
Funktioniert alles wunderbar, allerdings habe ich auf allen Seiten auch ein Fusszeilenmenü mit Haupt- und Unterseiten. Also eine Sitemap. Da habe ich aber nun das Problem, das Unterseiten einzeln aufgerufen werden. Also ein Link folgender Art: index.php?id=4 ich bräuchte aber einen Link, der die ID der übergeordneten Seite enthält und dann den Anker der aktuellen Seite. Also index.php?id=1#4 (Wobei die Hauptseite die ID 1 und die Unterseite die ID 4 hat)
Nochmal eine kleine Darstellung:
Hauptseite ID 1 (Link soll lauten: index.php?id=1)
|
|- Unterseite 4 (Link soll lauten: index.php?id=1#4)
|- Unterseite 5 (Link soll lauten: index.php?id=1#5)
|
Hauptseite ID 2 (Link soll lauten: index.php?id=2)
|
|- Unterseite 6 (Link soll lauten: index.php?id=2#6)
|- Unterseite 7 (Link soll lauten: index.php?id=2#7)
|
Hauptseite ID 3 (Link soll lauten: index.php?id=3)
|
|- Unterseite 8 (Link soll lauten: index.php?id=3#8 )
|- Unterseite 9 (Link soll lauten: index.php?id=3#9)
Natürlich könnte ich das rein mit jQuery lösen, aber wenn jemand Javascript ausschaltet funktioniert das Menü nicht mehr. Das möchte ich vermeiden.
Hat sonst jemand eine Lösung oder Idee?
Danke