Как выбрать вложенные элементы DOM внутри элемента 'ul' - PullRequest
10 голосов
/ 12 августа 2010

Я ищу способ собрать все теги <a> и затем загрузить их в массив, используя Mootool 1.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");

@ Dimitar

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

Продолжай ворчать:)

Ответы [ 3 ]

8 голосов
/ 12 августа 2010
// 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 голосов
/ 12 августа 2010

Я не уверен, если вы хотите как-то ограничить действие, но получить все якорные элементы на странице легко:

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

Если вы хотите ограничить поиск внутри элемента, установите для этого элемента идентификатор, чтобы вы могли легко его найти, и используйте getElementsByTagName для элемента:

var links = document.getElementById('menu').getElementsByTagName('a');
2 голосов
/ 13 августа 2010

$$('.menu a')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...