TouchEvent: touches 属性

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

touches 是一个只读的 TouchList,列出了所有当前与触摸表面接触的触摸点的 Touch 对象。无论它们是否发生变化,也无论它们在 touchstart 时期的目标元素是什么。

你可以将其理解为屏幕上能够被识别为正在被触摸的独立手指的数量。

注意: 数组中的触摸点不一定按照发生的顺序排列(数组中的第 i 个元素不一定是发生的第 i 个触摸点)。你不能假定特定的顺序。要确定触摸发生的顺序,请使用 touch 对象的 ID。

一个 TouchList,列出了所有仍然与触摸表面接触的触摸点的 Touch 对象。无论它们是否发生变化,也无论它们在 touchstart 时期的目标元素是什么。

示例

此示例演示了 TouchEvent 对象的 TouchEvent.touches 属性。TouchEvent.touches 属性是一个 TouchList 对象,其中包含当前触摸表面上每个接触点的 Touch 对象列表。

在以下代码片段中,touchstart 事件处理程序会检查 TouchEvent.touches 列表的长度,以确定激活的触摸点的数量,然后根据触摸点的数量调用不同的处理程序。

js
someElement.addEventListener("touchstart", (e) => {
  // Invoke the appropriate handler depending on the
  // number of touch points.
  switch (e.touches.length) {
    case 1:
      handle_one_touch(e);
      break;
    case 2:
      handle_two_touches(e);
      break;
    case 3:
      handle_three_touches(e);
      break;
    default:
      console.log("Not supported");
      break;
  }
});

规范

规范
触摸事件
# dom-touchevent-touches

浏览器兼容性