See the Pen 1029_탭 만들기 by limhaneul2244 (@limhaneul2244) on CodePen.
$(document).ready(function(){ // 0
$('.list .tab-button').click(function(){ // 1
let indexVal = $(this).attr('data-tab');
$('.list li').removeClass('active'); // 2
$('.tab-content').removeClass('show'); // 3
$(this).addClass('active'); // 4
$('#' + indexVal).addClass('show'); // 5
});
});
//방법2 :: tabContents의 길이를 체크해 탭길이가 늘어나도 적용가능하게 한다.
let tabBtn = $('.tabBtn');
let tabContents = $('.tabCon');
for(let i = 0; i< tabContents.length; i++) {
tabBtn.eq(i).on('click', function(){
tabBtn.removeClass('active');
tabBtn.eq(i).addClass('active');
tabContents.removeClass('show');
tabContents.eq(i).addClass('show');
});
}
0. html에 active 와 show를 붙여놓아서 document는 먼저 첫번째 tab을 보여주게 된다.
1. 위의 함수는 tab-button 을 클릭할 때 실행이 된다.
2. .list 의 자식 요소인 li에 active를 없애준다.
3. .tab-content의 show를 없애준다.
4. .tab-content에 active를 붙여준다.
5. $('#' + indexVal) -> id에 data-tab을 매칭시켜 클릭하는 .tab-button에 show를 붙인다.
data-tab은 탭과 하위 list가 매칭되어야 한다.
반응형
SMALL
'Script > jQuery' 카테고리의 다른 글
[jQuery] jQuery 특정요소만 선택하기 (0) | 2021.11.01 |
---|---|
[jQuery] jQuery를 이용해 top btn 누르면 화면 상단으로 이동하기 (0) | 2021.10.29 |
[jQuery] 탭 접었다 펼치는 아코디언 (0) | 2021.10.28 |
[jQuery] 함수 기본 구문 (0) | 2021.10.27 |
[jQuery] scrollTop을 이용해 window 높이값을 구하기 (header 변경) (0) | 2021.10.27 |