JQuery атрымаць наступны элемент і ўсе яго даччыныя

Як я магу атрымаць наступны элемент Div, а затым усе яго дзяцей?

<div class="1"></div>
<div class="2">
    <div class="child1"></div>
    <div class="child2"></div>
</div>
<div class="3">
    <div class="child1"></div>
</div>

таму, калі $ (гэта) у цяперашні час з'яўляецца клас 1, як я магу атрымаць толькі 2-га класа і ўсіх сваіх дзяцей. І я не магу спасылацца на яго з імем класа, так як я не ведаю, што гэта такое.

Я ў асноўным хачу аб'яднаць гэтыя 2 заявы ў 1.

$(this).next('div').animate({height : 'toggle'});
$(this).next('div *').animate({height : 'toggle'});
6
дададзена аўтар Blazemonger, крыніца

1 адказы

$(this).next('div').children().andSelf().animate({height : 'toggle'});
12
дададзена
Кароткі адказ: jQuery падтрымлівае ўнутраны стэк абраных аб'ектаў. Такія метады, як .next() і .children() націснуць на стэк; .end() ўсплывае. Я хацеў бы зрабіць выснову, што .andSelf() выглядае адзін узровень ніжэй у стэку.
дададзена аўтар Matt Ball, крыніца
Калі ласка. Прачытайце .end() дакументы, і гэта дае крыху больш падрабязна.
дададзена аўтар Matt Ball, крыніца
О, .andSelf() дакументы таксама растлумачыць: api.jquery.com/ andSelf
дададзена аўтар Matt Ball, крыніца
Дзякуючы Matt, што працаваў вялікі. Я буду мець, каб абгарнуць мой погляд вакол, як гэта стаў $ (гэта) .next() , так што ён можа спасылацца на сябе ў andSelf() як арыгінальны гэта 's брат.
дададзена аўтар Tim Joyce, крыніца
гэта ўзрушаюча ... Яшчэ раз дзякуй Matt
дададзена аўтар Tim Joyce, крыніца