• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 JavaScript, TS 게시판 선생님, 탭기능 구현 숙제 질문드립니다~

선생님, 탭기능 구현 숙제 질문드립니다~

  • 이 주제에는 1개 답변, 2명 참여가 있으며 codingapple3 년 전에 전에 마지막으로 업데이트했습니다.
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #35284

    전지운
    참가자

    안녕하세요 선생님!

    탭기능 만들며 배우는 for 반복문 탭기능 구현 숙제 질문 드려요~

    // 버튼 0을 누르면
    // 모든 버튼에 붙은 orange class 제거
    // 버튼 0에 orange class명 추가
    // 모든 div에 붙은 show 클래스명 제거
    // div 0에 show class명 추가

    var tabButton = document.querySelectorAll('.tab-button');
    tabButton[0].addEventListener('click', function(){ // 버튼 0을 누르면
    tabButton.classList.remove('orange'); // 모든 버튼에 붙은 orange 클래스 제거
    tabButton[0].classList.add('orange'); // 버튼 0에 orange 클래스 추가
    }) // 이렇게 해서 버튼 0을 클릭하면 Uncaught TypeError: can't access property "remove", tabButton.classList is undefined 이렇게
    에러가 뜹니다...ㅠㅠ

    그래서 혹시 orange 클래스가 두번째 버튼[1]에만 있어서 안먹는 건가 싶어

    var tabButton = document.querySelectorAll('.tab-button');

    tabButton[0].addEventListener('click', function(){ // 버튼 0을 누르면
    tabButton[1].classList.remove('orange'); // 모든 버튼에 붙은 orange 클래스 제거
    tabButton[0].classList.add('orange'); // 버튼 0에 orange 클래스 추가
    })  // 이렇게 인덱싱을 해주니까 에러가 안 뜨더라구요...

    왜 첫번째 코드는 안되는건지..제가 두번째 코드로 이해한게 맞는건지 지금 한 시간째 고민중인데요...지혜를 주시면 감사하겠습니다~~~

    #35310

    codingapple
    키 마스터

    .classList 는 한개 요소에만 붙일 수 있습니다 

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠