jQuery 질문... ㅜㅜ

jQuery 질문... ㅜㅜ

QA

jQuery 질문... ㅜㅜ

본문

안녕하세요, jQuery attr 함수가 생각대로 잘 안되서 질문드립니다 ㅎㅎ

3696597773_1604380430.8308.png

 

이렇게 숨기기/보이기 버튼을 클릭할때마다 밑의 <div id="search_div">가 나타나고 숨겨지고 할려고합니다...

처음 버튼을 눌렀을때는 숨겨지는데 다시 한번 누르면 안나타나내요 ㅜㅜ

attr을 사용해 클릭할때마다 class 값을 바꿔가면서 show(), hide()를 등록해줬는데 왜 다시 show()는 안되는지 이해가 안됩니다

 

그래서 코드의 밑부분에 버튼의 class 값을 출력을 해봤는데 undefined라네요... 위에 사진에도 있습니다;

애초에 그럼 버튼의 class 값이 지정되지 않았단 뜻이여서 attr 해도 소용이 없었던 걸까요??

 

뭐가 잘못된지 전혀 모르겠습니다. 아니면 다른 방법이라도 알려주실분 ㅜㅜ

 

 


<button id="btn" class="hidden">숨기기/보이기</button>
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.0.min.js" ></script>
<script type="text/javascript">
  $('.hidden').click(function(){
    $("#btn").attr('class','show');
    $('#search_div').hide();
  });
  $('.show').click(function(){
    $("#btn").attr('class','hidden');
    $('#search_div').show();
  });
  var class_by_id = document.getElementById('btn').ClassName;
  document.write(class_by_id); 
</script>

이 질문에 댓글 쓰기 :

답변 2

단순히 보여주기 숨기기는 jquery show(), hide() 기능을 사용하셔도 됩니다

굳이 클래스와 css까지 사용하셔야되는 상황이 아니라면 더 간편한 기능을 사용하세요

답변을 작성하시기 전에 로그인 해주세요.
전체 39
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT