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

เหตุการณ์ touchstart ของ HTML DOM

เหตุการณ์ touchstart ของ HTML DOM จะถูกกระตุ้นเมื่อ หน้าจอสัมผัสถูกสัมผัส (touched)

หมายเหตุ: เหตุการณ์นี้ทำงานได้เฉพาะบนอุปกรณ์ที่มีหน้าจอสัมผัสเท่านั้น

ไวยากรณ์ (Syntax)

ใน HTML

ontouchstart = "eventFunction()"

ใน JavaScript

eventObject.ontouchstart = eventFunction

หมายเหตุ: ตัวอย่าง Touch event ถูกทดสอบบน HTML Editor ออนไลน์ที่เข้าถึงผ่านมือถือหรืออุปกรณ์ที่รองรับการสัมผัส

ตัวอย่างการใช้งาน

ตัวอย่างเกมเดียวกับ touchend: กดค้างที่ปุ่ม "Hold On" เป็นเวลา 1 วินาทีเพื่อชนะ

<!DOCTYPE html>
<html>
<head>
<title>HTML DOM touchstart event</title>
<style>
  form { width:70%; margin: 0 auto; text-align: center; }
  * { padding: 2px; margin:5px; }
  input[type="button"] { border-radius: 50%; font-size: 20px; padding: 20px; border: 5px solid rgb(220, 53, 69); background: rgba(220, 53, 69, 0.5); color: #fefefe; }
</style>
</head>
<body>
  <form>
    <fieldset>
      <legend>HTML-DOM-touchstart-event</legend>
      <label for="textSelect">Game Time</label>
      <input type="button" id="gameSelect" value="Hold On">
      <div id="divDisplay">Hold On for 1 - sec to Win</div>
    </fieldset>
  </form>
<script>
  var divDisplay = document.getElementById("divDisplay");
  var gameSelect = document.getElementById("gameSelect");
  var duration = 1000;
  var timer;
  gameSelect.ontouchstart = startEventAction;
  function startEventAction() {
    timer = setTimeout(victory, duration);
  }
  gameSelect.ontouchend = endEventAction;
  function endEventAction(){
    if(timer) clearTimeout(timer);
  }
  function victory(){
    divDisplay.textContent = "You Win";
  }
</script>
</body>
</html>

ผลลัพธ์ (Output)

ก่อนสัมผัสปุ่ม "Hold On":

เหตุการณ์ touchstart ของ HTML DOM

หลังสัมผัสปุ่ม "Hold On" (และยกนิ้วหลังครบ 1 วินาที):

เหตุการณ์ touchstart ของ HTML DOM