HTML DOM TouchEvent targetTouches 属性


HTML DOM TouchEvent targetTouches 属性返回一个 TouchList 对象,该对象对应于在触摸表面上触发的所有接触点组成的列表。

注意:如果在指定节点或其任何子节点上触发触摸,则只有当在同一节点上触发后续触摸时,它们才会计算在内。

以下是语法 −

返回 TouchList 对象

event.targetTouches

注意:我们在可通过移动设备或具有触摸访问功能的系统访问的在线 HTML 编辑器上运行触控事件示例。此举是为了能够执行诸如在屏幕上触摸 2 秒的触控操作。

我们来看一个 TouchEvent targetTouches 属性示例 −

示例

 实时演示

<!DOCTYPE html>
<html>
<head>
<title>TouchEvent targetTouches</title>
<style>
   form {
      width:70%;
      margin: 0 auto;
      text-align: center;
   }
   * {
      padding: 2px;
      margin:5px;
   }
   input[type="button"] {
      border-radius: 10px;
   }
</style>
</head>
<body>
   <form id="formSelect" ontouchstart="startEventAction(event)" ontouchend="endEventAction(event)">
      <fieldset>
         <legend>TouchEvent-targetTouches</legend>
         <label for="textSelect">Game Players Selector</label>
         <div id="divDisplay">All Players Place a Finger on Screen<br>Game Starting in 2 sec</div>
      </fieldset>
   </form>
<script>
   var divDisplay = document.getElementById("divDisplay");
   var gameSelect = document.getElementById("formSelect");
   var duration = 2000;
   var timer;
   gameSelect.ontouchstart = startEventAction;
   function startEventAction(event) {
      timer = setTimeout(function(){
         eventAction(event)
      }, duration);
   }
   function endEventAction(event){
      if(timer)
      clearTimeout(timer);
      eventAction(event);
   }
   function eventAction(event) {
      var players = event.targetTouches.length;
      divDisplay.textContent = 'Total Players: '+players;
      gameSelect.removeAttribute('ontouchstart');
      gameSelect.removeAttribute('ontouchend');
   }
</script>
</body>
</html>

输出

触摸表单元素之前 −

触摸表单元素 2 秒后 −

更新于: 29-Oct-2019

137 次浏览

开启您的 职业生涯

完成课程即可获得认证

现在开始
广告