티스토리 뷰

jQuery

[jQuery] .toggleClass()

.toggleClass()

선택한 요소에 클래스의 추가/제거를 연속하여 사용 할 수 있습니다.


.toggleClass()

.toggleClass() 메서드는 선택한 요소에 클래스 존재 여부에 따라 효과를 추가하거나 제거하는 메서드입니다.

문법(Syntax)

$("선택자").toggleClass("클래스이름");
$("선택자").toggleClass("클래스이름",상태);
$("선택자").toggleClass("함수");

정의(Definition)

  • .toggleClass("클래스이름") 메서드는 선택한 요소에 주어진 클래스가 있는지 확인하는 효과를 주거나 제거합니다.
  • .toggleClass("클래스이름",상태) 메서드는 선택한 요소에 클래스와 그 상태에 따라 효과를 주거나 제거합니다.
  • .toggleClass("함수") 메서드는 선택한 요소에 함수를 사용하여 효과를 주거나 제거합니다.

샘플(Sample)

.toggleClass(className) : 선택한 요소에 클래스를 주거나 제거하는 예제입니다.

Sample1

탐색(Traversing)

  • .eq() 메서드는 선택한 요소에 인덱스 번호에 해당하는 요소를 찾습니다.
  • .filter() 메서드는 선택된 요소에서 선택하거나 함수를 사용할 수 있습니다.
  • .first() 메서드는 선택된 요소에서 첫번째 자식 요소를 찾습니다.
  • .has() 메서드는 선택된 요소의 자식 요소에서 주어진 선택자를 찾습니다.
  • .is() 메서드는 선택된 요소 객체의 특징을 판별합니다.
  • .last() 메서드는 선택된 요소에서 마지막 번째 자식 요소를 찾습니다.
jquery
$(".list1 li").toggleClass("rLine");
$(".list1 li").eq(2).toggleClass("rLine");
html
<h3>탐색(Traversing)</h3>
<div class="list1">
    <ul>
        <li>.eq() 메서드는 선택한 요소에 인덱스 번호에 해당하는 요소를 찾습니다.</li>
        <li>.filter() 메서드는 선택된 요소에서 선택하거나 함수를 사용할 수 있습니다.</li>
        <li>.first() 메서드는 선택된 요소에서 첫번째 자식 요소를 찾습니다.</li>
        <li>.has() 메서드는 선택된 요소의 자식 요소에서 주어진 선택자를 찾습니다.</li>
        <li>.is() 메서드는 선택된 요소 객체의 특징을 판별합니다.</li>
        <li>.last() 메서드는 선택된 요소에서 마지막 번째 자식 요소를 찾습니다.</li>
    </ul>
</div>
Total
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>jQuery Sample</title>
    <style>
        .select:before {padding: 4px 6px 2px 6px; font-size: 90%; color: #3d90b7; white-space: nowrap; background-color: #e7f6fd; border-radius: 4px;border: 1px dashed #3d90b7;}
        .rLine {padding: 4px 4px 2px 10px; font-size: 90%; color: #c7254e; white-space: nowrap; background-color: #f9f2f4; border-radius: 4px; border: 1px dashed #a51a3d;}
        a {border: 1px solid #5f6368; padding: 7px 20px 5px 20px; display: inline-block; border-radius: 20px; text-decoration: none;}
    </style>
</head>
<body>
    
    <h3>탐색(Traversing)</h3>
    <div class="list1">
        <ul>
            <li>.eq() 메서드는 선택한 요소에 인덱스 번호에 해당하는 요소를 찾습니다.</li>
            <li>.filter() 메서드는 선택된 요소에서 선택하거나 함수를 사용할 수 있습니다.</li>
            <li>.first() 메서드는 선택된 요소에서 첫번째 자식 요소를 찾습니다.</li>
            <li>.has() 메서드는 선택된 요소의 자식 요소에서 주어진 선택자를 찾습니다.</li>
            <li>.is() 메서드는 선택된 요소 객체의 특징을 판별합니다.</li>
            <li>.last() 메서드는 선택된 요소에서 마지막 번째 자식 요소를 찾습니다.</li>
        </ul>
    </div>
    
    <div class="choice1">
        <a href="#" class="off1">리셋</a>
        <a href="#" class="btn1">클릭하면 <em>toggleClass</em>를 줍니다.</a>
        <a href="#" class="btn2">클릭하면 세번째 리스트한테 <em>toggleClass</em>를 줍니다.</a>
    </div>
    
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script>
        $(".choice1 .off1").on("click", function(e){
            e.preventDefault();
            $(".list1 li").removeClass("rLine");
        });
        $(".choice1 .btn1").on("click", function(e){
            e.preventDefault();
            $(".list1 li").toggleClass("rLine");
        });
        $(".choice1 .btn2").on("click", function(e){
            e.preventDefault();
            $(".list1 li").eq(2).toggleClass("rLine");
        });
    </script>

</body>
</html>

샘플(Sample)

.toggleClass(className,state) : 선택한 요소의 클래스와 그에 따른 상태 값에 따라 효과를 주거나 제거하는 예제입니다.

Sample2

탐색(Traversing)

  • .eq() 메서드는 선택한 요소에 인덱스 번호에 해당하는 요소를 찾습니다. (clicks: 0)
  • .filter() 메서드는 선택된 요소에서 선택하거나 함수를 사용할 수 있습니다. (clicks: 0)
  • .first() 메서드는 선택된 요소에서 첫번째 자식 요소를 찾습니다. (clicks: 0)
  • .has() 메서드는 선택된 요소의 자식 요소에서 주어진 선택자를 찾습니다. (clicks: 0)
  • .is() 메서드는 선택된 요소 객체의 특징을 판별합니다. (clicks: 0)
  • .last() 메서드는 선택된 요소에서 마지막 번째 자식 요소를 찾습니다. (clicks: 0)
jquery
$(".list2 li").each(function() {
    var paragraph = $(this);
    var count = 0;

    $(".choice2 .btn1").click(function() {
        count++;
        paragraph.find("span").text("clicks:" + count);
        paragraph.toggleClass("rLine", count % 3 === 0);
    });
});
html
<h3>탐색(Traversing)</h3>
<div class="list2">
    <ul>
        <li>.eq() 메서드는 선택한 요소에 인덱스 번호에 해당하는 요소를 찾습니다. (<span>clicks: 0</span>)</li>
        <li>.filter() 메서드는 선택된 요소에서 선택하거나 함수를 사용할 수 있습니다. (<span>clicks: 0</span>)</li>
        <li>.first() 메서드는 선택된 요소에서 첫번째 자식 요소를 찾습니다. (<span>clicks: 0</span>)</li>
        <li>.has() 메서드는 선택된 요소의 자식 요소에서 주어진 선택자를 찾습니다. (<span>clicks: 0</span>)</li>
        <li>.is() 메서드는 선택된 요소 객체의 특징을 판별합니다. (<span>clicks: 0</span>)</li>
        <li>.last() 메서드는 선택된 요소에서 마지막 번째 자식 요소를 찾습니다. (<span>clicks: 0</span>)</li>
    </ul>
</div>
Total
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>jQuery Sample</title>
    <style>
        .select:before {padding: 4px 6px 2px 6px; font-size: 90%; color: #3d90b7; white-space: nowrap; background-color: #e7f6fd; border-radius: 4px;border: 1px dashed #3d90b7;}
        .rLine {padding: 4px 4px 2px 10px; font-size: 90%; color: #c7254e; white-space: nowrap; background-color: #f9f2f4; border-radius: 4px; border: 1px dashed #a51a3d;}
        a {border: 1px solid #5f6368; padding: 7px 20px 5px 20px; display: inline-block; border-radius: 20px; text-decoration: none;}
    </style>
</head>
<body>
    
    <h3>탐색(Traversing)</h3>
    <div class="list2">
        <ul>
            <li>.eq() 메서드는 선택한 요소에 인덱스 번호에 해당하는 요소를 찾습니다. (<span>clicks: 0</span>)</li>
            <li>.filter() 메서드는 선택된 요소에서 선택하거나 함수를 사용할 수 있습니다. (<span>clicks: 0</span>)</li>
            <li>.first() 메서드는 선택된 요소에서 첫번째 자식 요소를 찾습니다. (<span>clicks: 0</span>)</li>
            <li>.has() 메서드는 선택된 요소의 자식 요소에서 주어진 선택자를 찾습니다. (<span>clicks: 0</span>)</li>
            <li>.is() 메서드는 선택된 요소 객체의 특징을 판별합니다. (<span>clicks: 0</span>)</li>
            <li>.last() 메서드는 선택된 요소에서 마지막 번째 자식 요소를 찾습니다. (<span>clicks: 0</span>)</li>
        </ul>
    </div>
    
    <div class="choice2">
        <a href="#" class="off1">리셋</a>
        <a href="#" class="btn1">3의 배수만큼 클릭하면 효과를 나타냅니다.</a>
    </div>
    
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script>
        $(".choice2 .off1").on("click", function(e){
            e.preventDefault();
            $(".list2 li").removeClass("rLine");
        });
            
        $(".list2 li").each(function() {
            var paragraph = $(this);
            var count = 0;
            
            $(".choice2 .btn1").click(function() {
                count++;
                paragraph.find("span").text("clicks:" + count);
                paragraph.toggleClass("rLine", count % 3 === 0);
            });
        });
    </script>

</body>
</html>

공유하기(Share) 더보기

  • 네이버 블러그 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 트위터 공유하기
  • 트위터 공유하기

공감하기(Like) 더보기

태그(Tag) 더보기

질문하기(Questions)
댓글쓰기 폼