jQuery 탭을 사용하는 페이지가 있습니다. 각 탭에는 다른 것들 외에 동적으로 생성되는 하나 이상의 jQuery 아코디언이 포함되어 있습니다. 예 : 다른 사람이 (어떤이있는 경우) 붕괴하는 동안jQuery는 각 탭에서 첫 번째 아코디언을 선택합니다.
<div id="tab1" class="tab">
<div>
Some stuff
</div>
<div class="accordion">
I am an accordion
</div>
</div>
<div id="tab2" class="tab">
<div class="accordion">
I am also an accordion
</div>
More stuff
<div class="accordion">
I am also an accordion
</div>
</div>
나는 각 탭의 첫 번째 아코디언이 열린 상태를 유지하고 싶습니다. 나는 시도했다 :
$('.tab .accordion:first')
페이지의 첫 번째 아코디언 만 선택한다. 나는 또한 시도 :
는$('.tab .accordion:first-child')
이 TAB2에서 처음 아코디언을 선택하지만 위의 몇 가지 물건이 있기 때문에 그것은 TAB1에서 하나를 선택하지 않습니다. 나는 또한 시도했다 :
$('.tab > .accordion').filter(':first-child')
$('.tab').children('.accordion:first-child')
내가 생각할 수있는 선택기의 모든 조합과 함께. 이 시점에서 내 두뇌가 튀겨졌습니다. 당신이 중복 질문에 저를 지적하기 전에,이 중 어느 것도 정확히 같은 질문을하지 않습니다 :
JQuery Tab each Selected tab first text box focus
jquery select first child with class of a parent with class
jQuery selector for each first element on every parent
jQuery Selecting the first child with a specific attribute
내 경우의 차이가 나는 것입니다 이 탭에 표시되는 콘텐츠에 대한 제어 권한이 거의 없습니다.
어떻게 약 $ ('탭을 선택합니다.') 각 (함수() {var에 firstAcc = $ (이) .find ('아코디언.') EQ (0);.. })? – gaurav
쓰레기 ... 내가 물어 보는대로 대답을 찾았습니다. '$ ('. 아코디언 : 첫 번째 유형')'그건 공짜입니다. –
사실,': first-of-type'은 아코디언 클래스의 첫 번째 요소가 아니라 첫 번째 div 요소와 일치하기 때문에 위에 제공된 예제에서 작동하지 않습니다. 아래의 David Thomas의 대답을보십시오. –