使用>;在jquery选择器中

使用>;在jquery选择器中,jquery,jquery-selectors,Jquery,Jquery Selectors,可能重复: 嗨,有人能告诉我这种选择器的用途吗 $("> div", "#main-content") 和你的一样吗 $("div", "#main-content") ? 以前从未见过这种样式,只是在我刚买的模板中偶然发现了它。用于直接儿童 <ul id="mainUl"> <li> <ul id="secondaryUl"> <li></li> </ul>

可能重复:

嗨,有人能告诉我这种选择器的用途吗

$("> div", "#main-content")
和你的一样吗

 $("div", "#main-content")
?


以前从未见过这种样式,只是在我刚买的模板中偶然发现了它。

用于直接儿童

<ul id="mainUl">
   <li>
      <ul id="secondaryUl">
         <li></li>
      </ul>
   </li>
</ul>

在这里,两个
    标签都会被
    $(“ul”)
    捕获,但只有
    #mainUl
    会被
    $(“>ul”)
    捕获,请参考以清除您对
    的疑问,我认为
    $(“div”,“main content”)
    会选择
    #main content
    元素树中的所有div,而
    $(“>div”,“#main content”)
    只选择直接子级。有关更多信息,请参见。

    基本上,
    指示只匹配直接子级。如果省略
    ,则匹配下面每个级别的所有子级

    如果您有这样的结构:

    <div id="A">
      <div id="B">
        <div id="C"></div>
      </div>
    </div>
    
    应该还你B,但是

    #A > #C
    
    与C不匹配,而

    #A #C
    

    将。

    父元素子元素-仅选择直接子元素
    只是重复一下:

    注意:$(“>elem”,context)选择器将在将来被弃用 释放。因此,不鼓励使用它来代替使用替代品 选择器


    上面有一些很好的答案。具体回答您的问题:

    jQuery结构的工作原理:
    $(“标记选择”、“上下文”)
    也可以表示为
    $(“上下文标记选择”)

    “>”只选择上下文中的标记(一级深)

    所以
    $(“>div”,“主要内容”)
    技术上与
    $(“#主要内容>div”)
    并将选择一级的所有div作为#主要内容(但不更深)

    你的另一个例子是:
    $(“div”,“主要内容”)
    技术上与
    $(“#主要内容部分”)
    并将遍历#main content中的整个DOM结构并查找所有div


    希望这有帮助:-)

    请阅读文档:>仅适用于直接儿童。因此,如果您说'div>.myclass',它只会得到div中的.myclass,而不会得到其他任何内容。如果.myclass位于该div内的范围内,则不会选择它。希望这是清楚的:)
    #A #C