代码之家  ›  专栏  ›  技术社区  ›  Q_Mlilo

如何选择嵌套的dom元素

  •  9
  • Q_Mlilo  · 技术社区  · 16 年前

    我正在寻找一种方法来收集所有 <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:@奥斯卡

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

    @迪米特尔

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

    3 回复  |  直到 7 年前
        1
  •  10
  •   Dimitar Christoff    16 年前
    // 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");
    
        2
  •  13
  •   Guffa    16 年前

    我不确定您是否希望以某种方式限制该操作,但获取页面中的所有锚元素很容易:

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

    如果要将搜索限制在某个元素内,请在该元素上设置一个id,以便可以轻松地找到它,并使用 getElementsByTagName 在元素上:

    var links = document.getElementById('menu').getElementsByTagName('a');
    
        3
  •  2
  •   Oskar Krawczyk    16 年前

    $$('.menu a')