TouchEvent

表示触摸事件对象,继承自 Event,用于描述手指在触摸平面(如触摸屏)的状态变化,比如手指移动、点击、长按等。

该事件对象包含一个或多个触摸点,开发者可以通过它了解触摸平面上手指的状态变化。

实例属性

detail

detail: {
  x: number,
  y: number,
}

表示第一根手指的触摸点位置。

  • x: 触摸点在当前 LynxView 坐标系下的横轴位置。
  • y: 触摸点在当前 LynxView 坐标系下的竖轴位置。

touches

touches: Touch []

表示当前停留在触摸平面上的 Touch 对象,每个 Touch 对象描述了对应手指的触摸点信息,格式如下:

{
  identifier: number,       // 触摸点的唯一标识符,在同一次触摸过程中保持不变
  x: number,                // 触摸点在实际触摸的 element 坐标系下的横轴位置
  y: number,                // 触摸点在实际触摸的 element 坐标系下的竖轴位置
  pageX: number,            // 触摸点在当前 LynxView 坐标系下的横轴位置
  pageY: number,            // 触摸点在当前 LynxView 坐标系下的竖轴位置
  clientX: number,          // 触摸点在当前 窗口 坐标系下的横轴位置
  clientY: number,          // 触摸点在当前 窗口 坐标系下的横轴位置
}

changedTouches

changedTouches: Touch []

表示相比于上次触摸事件,状态发生变化的 Touch 对象,比如从无到有、位置变化、从有到无,changesTouches 的格式与 touches 的格式相同。

TouchEvent 的类型

touchstart

表示手指开始接触触摸平面,target 是包含触摸点且距离用户最近的 element

touchmove

表示手指在触摸平面上移动,target 始终与 touchstarttarget 相同。

touchend

表示手指从触摸平面上离开,targettouchstarttarget 相同,已经离开屏幕的触摸点可以在 changedTouches 中找到。

touchcancel

表示触摸事件被系统或 Lynx 外部手势中断,比如系统弹窗、来电,targettouchstarttarget 相同,已经被中断的触摸点可以在 changedTouches 中找到。

tap

表示手指在触摸平面上单击,target 是包含触摸点且距离用户最近的 element,仅第一根手指可以触发,并且当手指移动超过一定阈值或者触发了触摸位置的 UI 发生滑动,tap 事件无法触发。

此外,该事件和 longpress 事件在事件监听上互斥,即前端同时监听两个事件,则两个事件不会同时触发,longpress 优先。

longpress

表示手指在触摸平面上长按,target 是包含触摸点且距离用户最近的 element,长按触发的间隔为 500 ms

兼容性

LCD tables only load in the browser

除非另有说明,本项目采用知识共享署名 4.0 国际许可协议进行许可,代码示例采用 Apache License 2.0 许可协议进行许可。