<ul class="myList">
  <li><a href="http://jquery.com">jQuery supports</a>
    <ul>
      <li><a href="css1">CSS1</a></li>
      <li><a href="css2">CSS2</a></li>
      <li><a href="css3">CSS3</a></li>
      <li>Basic XPath</li>
    </ul>
  </li>
  <li>jQuery also supports
    <ul>
      <li>Custom selectors</li>
      <li>Form selectors</li>
    </ul>
  </li>
</ul> 
选取第一个ul呢    <ul>
      <li><a href="css1">CSS1</a></li>
      <li><a href="css2">CSS2</a></li>
      <li><a href="css3">CSS3</a></li>
      <li>Basic XPath</li>
    </ul>
我试过  ul.myList ul:first-child  选择的是第二个ul
这样写错哪里了? 刚看JQuery 疑惑中,

解决方案 »

  1.   

    谢谢我想知道 为什么 ul.myList ul:first-child 选择的会是第二个ul?
      

  2.   

    方法很多。alert($('ul.myList  ul').html());
      

  3.   


    没什么道理可以讲的 
    一般你可以先看API上的说明
    最后还可以直接页面调试JQUERY这个选择器的方法 看看他最后为什么会出来这个结果
      

  4.   


    我不需要知道JQuery选择器方法的实现, 
    但按照它的定义,:first-child 选择的是最先的子元素, 那么使用 :first-child 怎么也不应该选则到第二个ul啊。
      

  5.   

    我不知道这个选择器是不是bug
    如果你把<a href="http://jquery.com">jQuery supports</a>去掉 那就对了我个人理解要么是first-child是ul位于第二个子元素(li的)
    要么是bug
    你在不改变html的情况下也可以这样测试看看
    ul.myList ul:nth-child(2)
      

  6.   

    我翻了下文档 Selects all elements that are the first child of their parent.
    说明这不是bug
    要么是你理解错了
    要么是你看的文档有问题
      

  7.   

    ul.myList ul:first-child意思是说,在class=myList的ul内找后代ul,并且这个ul是它的父元素的第一个子元素