如何使用此选择器查找直接子项?

时间:2011-11-24 03:26:59

标签: javascript jquery this

我有这个小代码:

$("ul#mainnav > li").hover(function(){
   $("ul#mainnav > li > a").slideUp();
})

我只是不知道使用<a>选择直接子$(this)的正确语法 我用的就是这个,我觉得它错了......

$(this).find("> a")

谢谢。

2 个答案:

答案 0 :(得分:2)

首先,你有一个额外的报价。删除this后的引用。像这样:

$(this).find("> a") 

不可否认,我从来没有在这种情况下使用选择器,所以我不能评论为什么它不起作用。相反,我建议使用children()通常更快,恕我直言,更清楚。

$(this).children('a'); 

但是如果你真的想使用字符串选择器,这应该可以工作:

$('> a', this)

请注意,jquery docs表示后一代码将在某个时候弃用,因此请谨慎使用。我仍然建议使用children()

答案 1 :(得分:1)

如果您只想要第一个标签

,则可以使用$(this).children("a:first")