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/ і себе
додано Автор Matt Ball, джерело
Дякую Метт, що чудово працював. Мені доведеться зачекати, як цей став $ (this) .next() , так що він може вказати себе в andSelf() як початковий браузер this .
додано Автор Tim Joyce, джерело
це здорово ... Ще раз спасибі Метт
додано Автор Tim Joyce, джерело