1

我敢肯定有人会更改我的标题,但我喜欢它持续的时间。

无论如何,赫克托尔做了什么(就像我七岁的孩子会说的那样)?

$('#id').find('> a')...

顺便说一句,我知道这$('#parent > .child')$('#parent').children('.child')(如此处所解释)相同,而不是我曾经使用过它。

4

3 回答 3

3

在没有指定父级的情况下使用> a实际上是不推荐使用的语法,因为您已经发现它具有模棱两可的语义。 .find('> a')实际上等价于.children('a')

来自http://api.jquery.com/child-selector/

注意:$("> elem", context)选择器将在未来的版本中被弃用。因此不鼓励使用它来代替使用替代选择器。

[记住这$(sel, context)相当于$(context).find(sel)]

于 2012-09-16T05:19:44.457 回答
1

.find()通常用于选择许多级别的后代,但是,在您的情况下,>在限制选择之前添加a仅限子项(或仅当您使用 CSS 类代替 #id 时才添加第一级)。

它本质上与$('#id > a')$('#id').children('a')具有额外的函数调用相同。

你的标题很完美,顺便说一句:)

于 2012-09-16T05:35:09.567 回答
1

当您尝试使用以下查询查找元素时

$("#master").find('> a')

然后它将在具有属性 id = 'master' 的元素内找到所有第一级锚元素

当您尝试使用以下查询查找元素时

$("#master").find('a')

然后它会在元素中找到所有具有属性 id = 'master' 的锚元素,无论它在什么级别。

于 2012-09-16T06:05:51.033 回答