web-dev-qa-db-ja.com

'ul'要素内のネストされたDOM要素を選択する方法

すべてを収集する方法を探しています<a>タグを付け、Mootool1.1または純粋な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> 

ソリューションの編集:

みなさん、ありがとうございました。あなたの回答は私がより正確な解決策を見つけるのに役立ちました。

Mootools 1.1:@ Oskar

$$("ul.menu ul li ul li a");

@ディミター

document.getElements("ul.menu ul li ul li a");

オタクを続けてください:)

13
Q_Mlilo
// for the links of the first ul.menu on the page
var menuLinks = document.getElement("ul.menu").getElements("a");
// or you can get all links children of all uls with class menu
var menuLinks = document.getElements("ul.menu a");
8

どういうわけかアクションを制限したいかどうかはわかりませんが、ページ内のすべてのアンカー要素を取得するのは簡単です。

var links = document.getElementsByTagName('a');

要素内の検索を制限する場合は、要素を簡単に見つけられるようにその要素にIDを設定し、要素でgetElementsByTagNameを使用します。

var links = document.getElementById('menu').getElementsByTagName('a');
9
Guffa

$$('.menu a')

2
Oskar Krawczyk