jQuery - 为什么`li a`和`li:has(a)`不同?

时间:2011-10-02 14:38:16

标签: jquery jquery-selectors

在应用li ali:has(a)时,会显示不同的结果。但是,为什么呢?他们不应该做同样的事情吗?

1 个答案:

答案 0 :(得分:7)

  

他们不应该做同样的事吗?

没有。在第一个示例中,您选择a内的所有li;在第二个中,您选择的所有li都有a

来自manual,强调我的:

  

描述:选择包含至少一个与指定选择器匹配的元素的元素。

     

表达式$('div:has(p)') <div> 匹配,如果<p>存在于其后代中的任何位置,而不仅仅是直接子项。