테스트 사이트 - 개발 중인 베타 버전입니다

jquery 질문 채택완료

어서가자 6년 전 조회 2,969

http://airtrek.discoz.co.kr/airtrek/faq.php">http://airtrek.discoz.co.kr/airtrek/faq.php

 

여기 사이트에서

FAQ 눌렀을때

 

</strong></p>

<p>    $( ".td" ).click(function() {

            $( ".td" ).removeClass( "active" );

        if($( this ).hasClass( "active" )){

            $( ".td" ).removeClass( "active" );

        }else{

            $( this ).addClass( "active" );

        };

    });</p>

<p> <strong>

 

 

이렇게 해서 클릭하면 클레스 추가/삭제가 되는데 기존에 클래스 추가 되있는걸 한번 더 클릭시 클래스 삭제하려면 어떻게 해야 하나요?

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트

 

아래처럼 적용해보세요.

 

</p>

<p>      $( ".td" ).click(function() {

        if($(this).hasClass( "active" )){

            $(this).removeClass( "active" );

        } else {

           if ($(".td" ).hasClass( "active" )){

            $( ".td" ).removeClass( "active" );

        }

            $(this).addClass( "active" );

       }

    });

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

어서가자
6년 전
감사합니다!!

댓글을 작성하려면 로그인이 필요합니다.

1. .td 를 클릭할때 해당 클래스명(active)이 있는지 검사한다. 

 

2. 있으면 active 클래스를 remove 시킨다

 

2-1 없으면 active 클래스를 add 시킨다

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

어서가자
6년 전
1. .td 를 클릭할때 해당 클래스명(active)이 있는지 검사한다. 가 뭐죠??ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

L
6년 전

위의것대로 사용하시면 되는데요..

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

어서가자
6년 전
이미 클래스가 추가 되어 있는것을 한번 더 누르면 클래스가 안없어 져서요..
L
LukcyHoo
6년 전
클릭하는 요소에 클래스명 td 및 active 가 있어야 합니다. 그럼 클릭시 active 클래스가 없어집니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인