Schrift
[thread]13011[/thread]

Dynamisches Menü mit sichtbarem selektiertem Submenü (Kein JS, kein CSS, nur HTML) (Seite 2)

Leser: 3


<< |< 1 2 >| >> 13 Einträge, 2 Seiten
LanX-
 2009-01-18 13:07
#118136 #118136
User since
2008-07-15
1000 Artikel
BenutzerIn

user image
Struppi+2009-01-18 11:19:04--
(ich hab das mit dem Ausschluss von CSS auch erst später gelesen, da dies nur im Threadtitel vorkam).

hab ich auch nicht gesehen! Ist der Titel geupdatet worden?

EDIT: Fundstück im Cache!
Quote
Thema: Dynamisches Menü mit sichtbarem selektiertem Submenü (Kein JS, nur HTML)
LanX-
 2009-01-18 13:27
#118137 #118137
User since
2008-07-15
1000 Artikel
BenutzerIn

user image
@Drachin: ich hab mal sowas ähnliches mit ner rekursiven Funktion gelöst:

hier mal ungetesteter pseudocode, hoffe die Idee wird klar:


Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
sub menu() {
   my ($act_path, $select_path)=@_;
   my $out="<ul>";
   $out.=item($act_path);

   if ( display( $act_path, $select_path ) ) {
        $out.=menu( $_, $select_path ) for ( childs ($act_paths) );
   }
   $out.="</ul>";
   return $out;
}

$tree=menu("",$select_path);


über die boolesche Funktion display() steuerst du wann der Baum abgeschnitten wird.
$tree lässt du in deinem Template ausgeben.
path kann (muss aber nicht) die jeweilige URL sein.

PS die ausgabe der "<li>"-tags fehlt, ist jetzt ne fleißaufgabe, ich würds eher mit <div> oder <dl> machen.
scriptor
 2009-01-18 14:21
#118139 #118139
User since
2008-05-07
69 Artikel
BenutzerIn
[Homepage] [default_avatar]
Ich geb mal nicht auf, obwohl ich den Hintergrund, scheint´s, immer noch nicht verstehe:

Du solltest Dich mal fragen, ob die fertige HTML-Liste das richtige Datenformat für den Zweck ist! (Listenerzeugen solltest Du hinbekommen)

Hier zur Anregung die gestrippten Daten (oder xml oder hash) einer Seitenstruktur mit praktischen Metadaten (man kann sich sicherlich noch einfacheres ausdenken):
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
l   r   id      nr  pfad                    level grpid     status  name    
1 58 1 1 index.html 1 0 hidden home
2 3 168 2 ep.css 2 1 enable ep.css
4 5 88 3 robots.txt 2 1 enable robots2
6 7 193 4 sitemap.xml 2 1 enable sitemap
8 9 95 5 rss.xml 2 1 enable rss
10 11 192 6 mu.css 2 1 enable markup stylesheet
12 13 99 7 rss_weblog.xml 2 1 hidden rss-weblog
14 15 96 8 rss_morgen.xml 2 1 hidden rss-morgen
16 17 97 9 rss_gestern.xml 2 1 hidden rss-gestern
18 19 48 10 error.html 2 1 enable error
20 23 178 11 test.html 2 1 show ajax-test
21 22 179 12 get.html 3 178 enable get data
24 35 186 13 mainnavi 2 1 hidden mainnavi
25 26 187 14 index.html 3 186 show heute
27 28 188 15 gestern/index.html 3 186 show gestern
29 30 189 16 morgen/index.html 3 186 show morgen
31 32 190 17 finden/index.html 3 186 show finden
33 34 191 18 wiki/index.html 3 186 show wiki
36 37 4 19 gestern/index.html 2 1 hidden gestern
38 39 5 20 morgen/index.html 2 1 hidden morgen
40 41 185 21 finden.html 2 1 hidden finden
42 51 169 22 wiki.html 2 1 hidden wiki
43 46 105 23 strassen.html 3 169 hidden straßen
44 45 173 24 strassen/convert.html 4 105 hidden convertieren
47 50 175 25 quellen.html 3 169 show quellen
48 49 176 26 qconvert.html 4 175 hidden convertieren
52 53 106 27 sitemap.html 2 1 hidden sitemap
54 57 27 28 meta/impressum.html 2 1 show impressum
55 56 28 29 meta/kontakt.html 3 27 show kontakt


l: linker Wert (nested Set)
r: rechter Wert (nested Set)
id: Datensatz ID
nr: laufende Nummer (Meta)
pfad: ...
level: Hierarchie-Ebene (Meta)
grpid: id der Groupe (parent) (Meta)
status: disabled, erreichbar nicht im Menue, erreichbar im Menue
name: Menuename
<< |< 1 2 >| >> 13 Einträge, 2 Seiten



View all threads created 2009-01-16 17:18.