Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

วิธีเพิ่มคลาส active ให้กับองค์ประกอบปัจจุบันด้วย JavaScript

ตัวอย่าง

หากต้องการเพิ่มคลาส active ให้กับองค์ประกอบที่คลิกอยู่ (เช่น เมนูนำทาง) ให้ลบคลาส active จากองค์ประกอบอื่น แล้วเพิ่มให้องค์ประกอบที่คลิก

<!DOCTYPE html>
<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <style>
    .btn {
      border: none;
      outline: none;
      padding: 10px 16px;
      background-color: #6ea2f0;
      cursor: pointer;
      color:white;
      font-size: 18px;
    }
    .active, .btn:hover {
      background-color: #666;
      color: white;
    }
  </style>
</head>
<body>
  <h1>ตัวอย่างปุ่ม Active</h1>
  <div id="sampleDiv">
    <button class="btn">จิราฟ</button>
    <button class="btn active">วัว</button>
    <button class="btn">สิงโต</button>
    <button class="btn">เสือดาว</button>
    <button class="btn">เสือดาวลาย</button>
  </div>
  <h2>กดปุ่มใดๆ ด้านบนเพื่อตั้งค่าคลาสเป็น active</h2>
  <script>
    var btns = document.querySelectorAll(".btn");
    Array.from(btns).forEach(item => {
      item.addEventListener("click", () => {
        var selected = document.getElementsByClassName("active");
        selected[0].className = selected[0].className.replace(" active", "");
        item.className += " active";
      });
    });
  </script>
</body>
</html>

ผลลัพธ์

โค้ดข้างต้นจะสร้างผลลัพธ์ดังนี้:

วิธีเพิ่มคลาส active ให้กับองค์ประกอบปัจจุบันด้วย JavaScript

เมื่อคลิกปุ่มอื่น:

วิธีเพิ่มคลาส active ให้กับองค์ประกอบปัจจุบันด้วย JavaScript