Autor |
Nachricht |
shaly
Threadersteller
Dabei seit: 19.11.2002
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 10.12.2004 17:14
Titel [javascripts] childnodes von listen |
|
|
ich bin nicht wirklich geübt in javascript und wundere mich gerade. wie kann ich, wenn ich so eine liste habe
Code: |
<li>blabla1
<ul>
<li>blabla2</li>
<li>blabla2</li>
<ul>
<li>blabla3</li>
<li>blabla3</li>
<li>blabla3</li>
<li>blabla3</li>
<li>blabla3</li>
</ul>
<li>blabla2</li>
</ul>
</li>
|
habe die verschachtelung dritter ebene auslesen?
ich habe bisher sowas, damit komme ich an die zweite ebene. in der schleife will ich aber nochmal abfragen, ob die liste zweiter ordnung auch eine unterliste hat
Code: | navRoot = document.getElementById("nav");
for (i=0; i<navRoot.childNodes.length; i++) {
node = navRoot.childNodes[i];
//hier soll noch ne abfrage nach der dritten ebene hin
}
} |
|
|
|
|
|
dastef
Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 10.12.2004 19:45
Titel
|
|
|
das ding nochmal? node.ChildNotes.length da wo dein kommentar
steht? sollte eigentlich ohne weiteres funktionieren.
|
|
|
|
|
Anzeige
|
|
|
karmacoder
Dabei seit: 15.04.2002
Ort: Fürth
Alter: 42
Geschlecht:
|
Verfasst Sa 11.12.2004 20:32
Titel Re: [javascripts] childnodes von listen |
|
|
wie wärs mit sowas:
Code: |
navRoot = document.getElementById("nav");
walk_tree(root, 0);
function walk_tree(root, level){
for (i=0; i<root.childNodes.length; i++) {
node = root.childNodes[i];
walk_tree(node, ++level);
}
level--;
}
|
rennt dir den ganzen baum durch, kannst ja selber angaben machen wann der aufhören, soll was der machen soll...
|
|
|
|
|
shaly
Threadersteller
Dabei seit: 19.11.2002
Ort: -
Alter: -
Geschlecht:
|
Verfasst So 12.12.2004 16:28
Titel
|
|
|
juhu, super, danke, werde ich morgen mal ausprobieren. ich muss erstmal die letzte nacht verdauen
|
|
|
|
|
shaly
Threadersteller
Dabei seit: 19.11.2002
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mo 13.12.2004 10:30
Titel
|
|
|
ich habe es gerade mit deinem versucht, karma. er sagt, dass root undefined ist. wofür steht root? für die oberste ebene?
dastef, wenn ich mit node.childNodes.length ausgeben lasse, sagt er mir für alle drei oberpunkte "3". das kann ich nicht nachvollziehen, weil die zweite ebene mehr als drei nodes hat und nur der zweite punkt über unterpunkte verfügt. ich habe bei selfhtml gelesen, dass ie und nc da unterschiedlich interpretieren... mit umbrüchen usw... was genau wird denn als childnode erkannt? die neue zeile oder der tag? ich habe um jedes <li> noch ein <a>....
|
|
|
|
|
karmacoder
Dabei seit: 15.04.2002
Ort: Fürth
Alter: 42
Geschlecht:
|
Verfasst Mo 13.12.2004 15:13
Titel Re: [javascripts] childnodes von listen |
|
|
ja sorry man sollte die function schon richitg aufrufen
Code: |
navRoot = document.getElementById("nav");
walk_tree([b]navRoot [/b], 0);
function walk_tree(root, level){
for (i=0; i<root.childNodes.length; i++) {
node = root.childNodes[i];
walk_tree(node, ++level);
}
level--;
}
|
|
|
|
|
|
shaly
Threadersteller
Dabei seit: 19.11.2002
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mo 13.12.2004 15:16
Titel
|
|
|
oder nicht einfach kopieren und einfügen, ohne nachzudenken
danke!
er gibt mir innerhalb der funktion "null" für die variable root wieder, wenn ich unmittelbar nach "navRoot = document.getElementById("nav");" navroot ausgeben will, passiert gar nichts. meine liste hat die id="nav"
offenbar findet er die nicht oder so..?
hilfe..?
Zuletzt bearbeitet von shaly am Mo 13.12.2004 15:29, insgesamt 1-mal bearbeitet
|
|
|
|
|
|
|
|
Ähnliche Themen |
Childnodes in CSS?
problem mit xml (childNodes...)
Probleme bei mehreren Javascripts
mehrere javascripts auf einer seite
listen in ff?
IE und Listen
|
|