我将使用什么jQuery语法来查找父标记(及其所有子标记)中的所有第一代UL标记

时间:2010-07-21 21:27:30

标签: jquery jquery-selectors

鉴于以下HTML,我如何选择所有第一代UL标签,以便最终得到以下元素:company,subnav_1 - subnav_4,enginTool,prodSup,qualRel和lit,但是没有内部的UL那些元素?

<div id="col1">
  <h2></h2>
  <ul id="company"></ul>
  <div id="nav">
    <div id="navcordion">
      <h2></h2>
      <div>
        <ul id="subnav_1">
          <li>
            <ul></ul>
          </li>
        </ul>
      </div>
      <h2></h2>
      <div>
        <ul id="subnav_2">
          <li>
            <ul></ul>
          </li>
        </ul>
      </div>
      <h2></h2>
      <div>
        <ul id="subnav_3">
          <li>
            <ul></ul>
          </li>
        </ul>
      </div>
      <h2></h2>
      <div>
        <ul id="subnav_4"></ul>
      </div>
    </div>
    <div class="clear"></div>
  </div>
  <h2></h2>
  <h2></h2>
  <ul id="enginTool"></ul>
  <h2></h2>
  <ul id="prodSup"></ul>
  <h2></h2>
  <ul id="qualRel"></ul>
  <h2></h2>
  <h2></h2>
  <h2></h2>
  <ul id="lit"></ul>
  <h2></h2>
</div>

我尝过#col1>ul#col1 ul:first#col1 ul:nth-child(1),但都没有给我所有我追求的元素。

1 个答案:

答案 0 :(得分:3)

由于<ul>只在<li> s或<div> s中,这会有效吗?仅选择<ul>个孩子的<div>

div > ul

使用jQuery,您应该能够通过将#col1的父级作为第二个参数传递给$()进行过滤,这样您就不会意外选择其他列表。