Web Cơ Bản

Phương thức toggleClass() trong jQuery

1) Phương thức toggleClass() trong jQuery

- Phương thức toggleClass() dùng để thực hiện luân phiên giữa việc thêm/xóa tên lớp khỏi giá trị thuộc tính class của phần tử.

2) Cách sử dụng phương thức toggleClass() trong jQuery

- Để sử dụng phương thức toggleClass(), chúng ta có hai cú pháp cơ bản như sau:

Cú pháp 1:

- Cú pháp này thường được sử dụng trong trường hợp bộ chọn chỉ tìm được một phần tử trùng khớp hoặc bạn muốn tất cả các phần tử trùng khớp đều được thiết lập chung một giá trị.

$(selector).toggleClass(classname,switch);

- Dưới đây là bảng mô tả ý nghĩa & cách sử dụng các tham số trong cú pháp trên:

Tham số Yêu cầu Mô tả
classname Bắt buộc

- Xác định tên lớp mà bạn muốn thêm vào hoặc xóa ra khỏi giá trị thuộc tính class của phần tử.

- Lưu ý: Nếu muốn thêm hoặc xóa nhiều tên lớp thì bạn phải thêm một dấu khoảng trắng ngăn cách giữa các tên lớp.

switch Không bắt buộc

- Tham số switch chỉ có thể nhận một trong hai giá trị:

  • true: phương thức toggleClass() chỉ thêm tên lớp vào giá trị thuộc tính class của phần tử, chứ không xóa tên lớp ra khỏi giá trị thuộc tính class của phần tử.
  • false: phương thức toggleClass() chỉ xóa tên lớp ra khỏi giá trị thuộc tính class của phần tử, chứ không thêm tên lớp vào giá trị thuộc tính class của phần tử.

Cú pháp 2:

- Cú pháp này thường được sử dụng trong trường hợp bộ chọn tìm được nhiều phần tử trùng khớp và bạn muốn mỗi phần tử trùng khớp được thiết lập một giá trị riêng.

$(selector).toggleClass(function(index,currentclass){
    return classname;
},switch);

- Dưới đây là bảng mô tả ý nghĩa & cách sử dụng các tham số trong cú pháp trên:

Tham số Yêu cầu Mô tả
function(index,currentclass){
    return classname;
}
Bắt buộc

- Chỉ định một hàm trả về tên lớp mà bạn muốn thêm/xóa khỏi giá trị thuộc tính class của phần tử được chọn.

- Trong đó:

  • Tham số index trả về chỉ số của phần tử.
  • Tham số currentclass trả về giá trị thuộc tính class của phần tử.
switch Không bắt buộc - Giống với tham số switch trong cú pháp 1

3) Một số ví dụ

Ví dụ:

- Thêm/xóa lớp font và border cho các phần tử <p>


<script>
    $(document).ready(function(){
       $("button").click(function(){
            $("p").toggleClass("font border");
        });
    });
</script>
Xem ví dụ
Ví dụ:

- Chỉ thêm (hoặc chỉ xóa) lớp info cho các phần tử <p>


<script>
    $(document).ready(function(){
        $("#add").click(function(){
            $("p").toggleClass("info",true);
        });
        $("#delete").click(function(){
            $("p").toggleClass("info",false);
        });
    });
</script>
Xem ví dụ
Ví dụ:

- Thêm/xóa tên lớp (tùy trường hợp) cho các phần tử


<script>
    $(document).ready(function(){
        $("button").click(function(){
            $("p").toggleClass(function(a){
                if(a==0){return "font";}
                if(a==1){return "font border";}
                if(a==2){return "border";}
            });
        });
    });
</script>
Xem ví dụ