代码之家  ›  专栏  ›  技术社区  ›  Mike Webb

如何对对象使用jQuery选择器?

  •  0
  • Mike Webb  · 技术社区  · 14 年前

    我在一个对象中有一个无序列表:

    var myUL = $('ul#theID'); //I send this var to another function in the code
    

    我只想要这个对象的直接子对象(我在每个'li'中有另一个'ul',其中也有'li',但是这个选择器不起作用:

    $(myUL + '>li').each( etc, etc...
    

    如果我使用 $('li', myUL) 它给了我所有的李与ul的,而不仅仅是直接的孩子,这不是我想要的。我只想要直接的孩子。

    正确的语法是什么?

    4 回复  |  直到 14 年前
        1
  •  3
  •   Pointy    14 年前

    尝试

    var li_children = myUL.children('li');
    

    (正确地说,是 <ul> 只能有 <li>

        2
  •  1
  •   meder omuraliev    14 年前
    $('>li', myUl)
    

    那就足够了?

        3
  •  1
  •   Praveen Prasad    14 年前
    var myUL = Jquery('ul#theID');
    jQuery('>li', myUL);
    
    
    jQuery selector works this way
    jQuery(selector, context);
    
        4
  •  0
  •   Andrew Wirick    14 年前

    您不需要在以ID结尾的选择器的开头使用标记名。仅ID是最快的选择器。使用直接子方法将比使用选择器更快。另外,不向.children()方法添加选择器将允许jQuery跳过不需要的筛选步骤,因为您应该拥有所有“li”子级,而不管:

    var $myUls = $( "#theID" ).children();