过了一次文档,做个备忘。
Touch 接口
每一个单独的触摸点,不可变。
interface Touch {
readonly attribute long identifier;
readonly attribute EventTarget target;
readonly attribute long screenX;
readonly attribute long screenY;
readonly attribute long clientX;
readonly attribute long clientY;
readonly attribute long pageX;
readonly attribute long pageY;
};
- `clientX` 是相对 `viewport` 的,不包括滚动偏移
- `screenX` 是相对屏幕的
- `pageX` 是相对文档的(即相对 `viewport` 的偏移加上滚动偏移)
TouchList 接口
一个 touch 事件中的触摸点,不可变。
interface TouchList {
readonly attribute unsigned long length;
gettter Touch item (unsigned long index);
};
TouchEvent 接口
定义了 touchstart
,touchend
,touchmove
,touchcancel
事件,不可变。
有以下属性:
interface TouchEvent : UIEvent {
readonly attribute TouchList touches;
readonly attribute TouchList targetTouches;
readonly attribute TouchList changedTouches;
readonly attribute boolean altKey;
readonly attribute boolean metaKey;
readonly attribute boolean ctrlKey;
readonly attribute boolean shiftKey;
};
touches
: List,所有触摸点。targetTouches
: List,聚焦在绑定事件的元素上的所有触摸点。changedTouches
: List,与当前事件相关的触摸点。对于touchstart
事件,所当前所有处于激活状态的点,对于touchmove
事件来说,是所有有移动的点,对于touchend
和touchcancel
事件来说,是所有离开接触面的点。
😳 😳 😳