자바스크립트

웹을 움직이는 언어, 자바스크립트! ES6+, Vue, React, Node.js 등 모던 JS 생태계를 깊이 있게 탐구하는 공간입니다.

2025.02.22 02:51

toggleClass(): jQuery의 클래스 토글 기능

  • 나우호스팅 21일 전 2025.02.22 02:51
  • 13
    0

jquery .toggleClass()


jQuery .toggleClass() 설명


`.toggleClass()`는 jQuery의 메소드로, 선택한 요소에 클래스를 추가하거나 제거합니다.

자바스크립트로 .toggleClass() 구현하기


`.toggleClass()`를 구현하기 위해서는, 자바스크립트의 `classList` API를 사용할 수 있습니다. `classList` API는 요소의 클래스를 관리하는 메소드입니다.

#hostingforum.kr
javascript

// 요소 선택

const element = document.querySelector('#example');



// toggleClass() 메소드 구현

function toggleClass(element, className) {

  // 요소의 클래스가 이미 존재하는지 확인

  if (element.classList.contains(className)) {

    // 클래스가 이미 존재하면 제거

    element.classList.remove(className);

  } else {

    // 클래스가 존재하지 않으면 추가

    element.classList.add(className);

  }

}



// toggleClass() 메소드 호출

toggleClass(element, 'active');



jQuery .toggleClass() 소스코드 분석


`.toggleClass()` 메소드는 jQuery의 `core.js` 파일에 정의되어 있습니다. 소스코드는 다음과 같습니다.

#hostingforum.kr
javascript

// jQuery .toggleClass() 소스코드

toggleClass: function( element, className ) {

  var self = this;

  return this.each(function() {

    var $this = $( this ),

      $toggled = $this.toggleClass( className );



    // Support: Android 4.1

    // toggleClass might not be supported, make sure to re-toggle

    if ( $toggled[ 0 ] !== this ) {

      $this.toggleClass( className );

    }



    return $toggled;

  });

}



자바스크립트로 .toggleClass() 구현하기 (jQuery와 동일)


`.toggleClass()` 메소드를 jQuery와 동일하게 구현하기 위해서는, `each()` 메소드를 사용하여 요소의 클래스를 관리하는 로직을 구현해야 합니다.

#hostingforum.kr
javascript

// 요소 선택

const elements = document.querySelectorAll('#example');



// toggleClass() 메소드 구현

function toggleClass(elements, className) {

  elements.forEach(function(element) {

    // 요소의 클래스가 이미 존재하는지 확인

    if (element.classList.contains(className)) {

      // 클래스가 이미 존재하면 제거

      element.classList.remove(className);

    } else {

      // 클래스가 존재하지 않으면 추가

      element.classList.add(className);

    }

  });

}



// toggleClass() 메소드 호출

toggleClass(elements, 'active');



결론


`.toggleClass()` 메소드는 jQuery의 메소드로, 선택한 요소에 클래스를 추가하거나 제거합니다. 자바스크립트로 `.toggleClass()` 메소드를 구현하기 위해서는, `classList` API를 사용하여 요소의 클래스를 관리하는 로직을 구현해야 합니다. jQuery의 `.toggleClass()` 메소드는 `each()` 메소드를 사용하여 요소의 클래스를 관리하는 로직을 구현하고 있습니다.

이 게시물에 포함된 라이브러리

[NGINX] index - 기본 인덱스 파일을 설정합니다.
[PHP] sin - 사인
[PHP] round - float를 반올림합니다.
[PHP] min - 가장 낮은 값 찾기
[PHP] asin - 아크 사인
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 자바스크립트 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 35건 / 2 페이지

검색

게시물 검색