So wählen Sie verschachtelte dom-Elemente
Ich bin auf der Suche nach einem Weg, um alle zu sammeln <a>
- tags und laden dann in ein array mit Mootool 1.1 oder reinem javascript.
<ul class="menu">
<li>
<ul>
<li><a href="#">Group One</a>
<ul>
<li><a href="#">I want</a></li>
<li><a href="#">I want too</a></li>
</ul>
</li>
<li><a href="#">Group Two</a>
<ul>
<li"><a href="#">I want</a></li>
<li><a href="#">I want too</a></li>
</ul>
</li>
</ul>
</li>
</ul>
Edit Lösung:
Danke an Euch alle, Eure Antworten haben mir geholfen, finden Sie eine genauere Lösung.
Mootools 1.1: @ Oskar
$$("ul.menu ul li ul li a");
@ Dimitar
document.getElements("ul.menu ul li ul li a");
Halten Geeking 🙂
document.getElemnts
ist mootools, nicht native javascript - $ $ - Aliase. 🙂 es gibt eine Schule des Denkens, dass eine allzu präzise in den Selektoren ist nicht immer die zu den besten performance-Ergebnisse oder Wartbarkeit - es sei denn, Sie müssen so präzise sein, um auszuschließen, verschiedene links, ich denke, es ist übertrieben. eine elegantere Lösung und sicherlich schneller durchführen wäre so ordnen Sie eine Klasse, um die links selbst, etwas das wir nicht immer das bekommen, ändern Sie das markup. 🙂
InformationsquelleAutor Q_Mlilo | 2010-08-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
scheint jetzt nicht mehr arbeiten
Dokuments verwenden.querySelector(); statt. EG:
document.querySelector("ul.menu a");
VM231:1 Uncaught TypeError: document.getElements is not a function at <anonymous>:1:10
Ich Frage mich, was machen u machen, die seltsamen Kommentar zu beleidigen .. Mangel an grundlegenden Anstand / Erziehung ?
InformationsquelleAutor Dimitar Christoff
Ich bin mir nicht sicher, wenn Sie wollen, beschränken Sie die Aktion irgendwie, aber immer alle Anker-Elemente in der Seite ist einfach:
Wenn Sie möchten, beschränken Sie Ihre Suche innerhalb eines Elements an, stellen Sie eine id auf das element, so dass Sie es leicht finden können, und verwenden Sie die
getElementsByTagName
auf das element:Legen Sie dann eine id für das Menü-element, so dass Sie verwenden können, die
getElementById
Methode, um es zu finden, dann verwenden Sie diegetElementsByTagName
Methode auf das element zu finden, die links drin.InformationsquelleAutor Guffa
$$('.menu a')
$$ ist veraltet, aber es ist ein alias für
this.document.getElements()
- diese Auswahl ist ein bisschen breit, obwohl. was, wenn Sie<div class="menu">
anderswoDie aktuelle Joomla! CMS-version(1.5) verwendet mootools 1.1, also bis Joomla! 1.6(nutzt mootools 1.2) ist offiziell freigegeben und die $ $ - Selektor wird immer noch nützlich sein, um Entwickler. Überprüfen Sie auch mein edit oben.
Danke Kumpel, ich Lerne so viel.
InformationsquelleAutor Oskar Krawczyk