jquery这个子选择器?

时间:2010-12-20 08:32:08

标签: jquery parent

哎, 快速问题,我在网上找不到任何东西。我有一个父div和一个子div。用css选择它你会说:

#parent .child {}

在jquery中,我的父元素有一个var,但是如何用这个选择子元素呢? 我知道创建一个新的var很容易,我只是好奇它是否可能?

var Parent = $('#parent');

Parent.click(function() {
$(this > '.child').hide();

谢谢

5 个答案:

答案 0 :(得分:23)

正确的语法是:

$(".child", this)

如果您只想要直接孩子:

$("> .child", this)

(归功于 Gumbo 提及此事)

两年后

更新

您可以使用$(this).find('> .child')

答案 1 :(得分:6)

您可以调用.find()方法:

var Parent = $('#parent');

Parent.click(function() {
    $(this).find('.child').hide();
});

如果您只想选择直系儿童,请改用.children()方法:

Parent.click(function() {
    $(this).children('.child').hide();
});

人们经常使用像

这样的语法
$('.child', this);

以及。这对我来说不是很方便,因为你总是写一个“反向”的命令。无论如何,这种语法在内部被转换为.find()语句,所以你实际上是在保存一个电话。

参考:.find().children()

答案 2 :(得分:1)

试试这段代码:

  $("#parent").click(function () {
               $(this).next().hide();
});

答案 3 :(得分:1)

var Parent = $('#parent');

Parent.click(function () {
    $(".child", this).hide();
});

$("#parent").click(function () {
    $(".child", this).hide();
});

答案 4 :(得分:1)

您可以找到父元素的子元素并应用css。

示例代码如下。

var Parent = $('#parent');

Parent.click(function() {
$(this).find('.child').hide();});