본문 바로가기

Webstoryboy

Category

Explanation

JQUERY/Alphabet

toggleClass()

toggleClass()

toggleClass() 메서드는 선택한 요소한테 클래스를 추기/삭제합니다. addClass() 메서드와 removeClass() 메서드를 결합한 형태라고 보시면 됩니다. 한번 클릭하면 추가, 한번 클릭하면 삭제되는 형태입니다.


toggleClass()

toggleClass() 메서드는 선택한 요소한테 클래스를 추기/삭제합니다.

특징 설명
버전(version) 1.x
결과값(return) 불린(true or false)
사용성 ★★★★★

문법(Syntax)

"선택자".toggleClass(클래스 이름)
"선택자".toggleClass(함수)

//클래스 여부를 확인하는 경우
$("div").toggleClass("className");

//함수를 사용하는 경우
$("div").toggleClass(function(){});
  • 선택자(selector) : 클래스 이름을 추가할 선택자를 설정합니다.
  • 클래스 이름(class name) : 추가할 클래스 이름을 설정합니다.
  • 함수(function) : 클래스를 추가한 후 실행되는 함수를 설정합니다.

정의(Definition)

  • toggleClass() 메서드는 선택한 요소한테 클래스를 추기/삭제합니다.

클래스와 관련된 메서드(class Related method)

  • addClass() 메서드는 선택한 요소한테 클래스 이름을 추가합니다.
  • removeClass() 메서드는 선택한 요소한테 클래스 이름을 삭제합니다.
  • hasClass() 메서드는 선택한 요소한테 클래스가 있는지 확인하고 불린을 반환합니다.
  • toggleClass() 메서드는 선택한 요소한테 클래스를 추기/삭제합니다.

비교(Compare)

  • jQuery에서 클래스 추가/삭제는 toggleClass()를 사용합니다.
  • Javascript에서 클래스 추가/삭제는 classList.toggle()를 사용합니다.

예제1(Sample)

이미지를 클릭하면 선택하고, 클릭하면 선택이 해제됩니다.
샘플이미지1
샘플이미지2
샘플이미지3
샘플이미지4
샘플이미지5
이미지를 클릭하면 선택/해제 됩니다.
HTML
CSS
SCRIPT
<div class="jsample">
    <div><img src="https://tistory4.daumcdn.net/tistory/2933724/skin/images/hover01.jpg" alt="샘플이미지1"></div>
    <div><img src="https://tistory4.daumcdn.net/tistory/2933724/skin/images/hover02.jpg" alt="샘플이미지2"></div>
    <div><img src="https://tistory4.daumcdn.net/tistory/2933724/skin/images/hover03.jpg" alt="샘플이미지3"></div>
    <div><img src="https://tistory4.daumcdn.net/tistory/2933724/skin/images/hover04.jpg" alt="샘플이미지4"></div>
    <div><img src="https://tistory4.daumcdn.net/tistory/2933724/skin/images/hover05.jpg" alt="샘플이미지5"></div>
</div>
.jsample {
    overflow: hidden;
}
.jsample > div {
    float: left;
    width: 18%;
    margin: 1%;
    border: 5px solid transparent;
    box-sizing: border-box;
}
.jsample > div img {
    width: 100%;
    margin: 0;
    border-radius: 3px;
}
.jsample > div.selected {
    border: 5px solid #7d0f2a;
    position: relative;
    box-sizing: border-box;
    border-radius: 10px;
    background: #b02b4c;
}
.jsample > div.selected img {
    opacity: 0.2;
}
.jsample > div.selected::before {
    content: 'selected';
    position: absolute;
    left: 50%; top: 50%;
    color: #fff;
    transform: translate(-50%, -50%);
}
$(".sampleBtn .reset").click(function(e){
    e.preventDefault();
    $(".jsample > div").removeClass("selected");
});
$(".jsample > div").click(function(){
    $(this).toggleClass("selected");
});

호환성(Compatibility)

크롬 아이콘 파이어폭스 아이콘 사파리 아이콘 오페라 아이콘 네이버 웨일 익스플로러6 아이콘6 익스플로러7 아이콘7 익스플로러8 아이콘8 익스플로러9 아이콘9 익스플로러10 아이콘10 익스플로러11 아이콘11 엣지 아이콘 안드로이드 아이콘 ios 아이콘
.hasClass() jQeury 1.x 버전
jQeury 2.x 버전
jQeury 3.x 버전

참고 사이트(Reference)


더보기

인스타그램 보기 바로가기

포트폴리오 스터디 바로가기

유튜브 영상보기 바로가기

질문하기