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

วิธีนับจำนวนคลิกบนอิลีเมนต์ด้วย Vanilla JavaScript

การนับจำนวนคลิกบนอิลีเมนต์เป็นหนึ่งในสิ่งที่ง่ายที่สุดที่ทำได้กับ JavaScript ทุกสิ่งที่คุณต้องทำคือ ประกาศตัวแปรเพื่อเก็บจำนวนคลิก และใช้เมธอด addEventListener บนอิลีเมนต์เป้าหมาย

สมมติว่าคุณต้องการติดตามจำนวนคลิกบนอิลีเมนต์ปุ่ม เช่น ปุ่มหน้าหลัก

มาร์กอัป HTML

สร้างอิลีเมนต์ปุ่ม HTML และให้คลาส button-home:

<button class="button-home">Home</button>

JavaScript

เพิ่มโค้ดต่อไปนี้ในไฟล์ JavaScript ของคุณ (จะอธิบายด้านล่าง):

let buttonHome = document.querySelector(".button-home"); let CountButtonHomeClicks = 0; buttonHome.addEventListener("click", function() { CountButtonHomeClicks += 1; console.log(CountButtonHomeClicks); });

ผลลัพธ์:

วิธีนับจำนวนคลิกบนอิลีเมนต์ด้วย Vanilla JavaScript

ผมเพิ่ม CSS สไตล์นิดหน่อยให้ปุ่มด้านบนเพื่อให้คลิกง่ายขึ้น

สิ่งที่เกิดขึ้นในโค้ด JavaScript:

  • ก่อนอื่น ใช้เมธอด querySelector() เลือกคลาส button-home บนอิลีเมนต์ปุ่ม แล้วกำหนดให้ตัวแปร buttonHome
  • จากนั้นประกาศตัวแปร CountButtonHomeClicks เพื่อเก็บคลิกในอนาคต ให้ค่าเริ่มต้นเป็น 0
  • ต่อมาแนบ event listener เข้ากับ buttonHome โดยใช้เมธอด addEventListener()
  • ภายใน event listener ระบุว่าจะรอฟังเหตุการณ์ 'click' และต้องการรัน function() ทุกครั้งที่มีการคลิก
  • ภายในฟังก์ชัน ระบุว่าต้องการเพิ่ม 1 ให้ตัวแปร CountButtonHomeClicks ทุกครั้งที่มีการคลิก ใช้ตัวดำเนินการ += (บวกเท่ากับ)
  • สุดท้าย ใช้ console.log() แสดงแต่ละเหตุการณ์คลิก บนตัวแปร CountButtonHomeClicks

ตอนนี้คุณรู้วิธีนับคลิกบนอิลีเมนต์เฉพาะแล้ว

ควรทราบ:

  • โค้ดด้านบนใช้ไวยากรณ์ ES6 หากใช้ ES5 ให้เปลี่ยน let เป็น var จะทำงานเหมือนกัน
  • ประเภทฟังก์ชันในตัวอย่างนี้เรียกว่า anonymous function (ฟังก์ชันไร้ชื่อ) เพราะไม่มีชื่อ — ต่างจาก function expressions และ function declarations
  • Anonymous functions ไม่สามารถนำกลับมาใช้ใหม่ได้ หากต้องการเรียกฟังก์ชันเดียวกันหลายเหตุการณ์ ให้ใช้ function expression หรือ function declaration

รับโค้ด

นี่คือ CodePen พร้อมโค้ดทั้งหมดด้านบน