元素:pointercancel 事件
当浏览器确定不太可能再有指针事件,或者在 pointerdown
事件触发后,指针随后被用于通过平移、缩放或滚动来操作视窗时,就会触发 pointercancel
事件。
一些触发 pointercancel
事件的场景示例
- 发生取消指针活动的硬件事件。这可能包括,例如,用户使用应用程序切换器界面或移动设备上的“主页”按钮切换应用程序。
- 在指针处于活动状态时,设备的屏幕方向发生改变。
- 浏览器判断用户意外启动了指针输入。例如,如果硬件支持手掌拒绝功能,以防止用手掌抵住显示屏,同时使用触控笔会意外触发事件。
touch-action
CSS 属性会阻止输入继续。- 当用户与太多同时指针交互时,浏览器会为所有现有指针触发此事件(即使用户仍然触摸屏幕)。
注意: 在触发 pointercancel
事件后,浏览器还会发送 pointerout
,然后是 pointerleave
。
语法
在方法中使用事件名称,如 addEventListener()
,或者设置事件处理程序属性。
addEventListener("pointercancel", (event) => {});
onpointercancel = (event) => {};
事件类型
一个 PointerEvent
。继承自 Event
。
事件属性
此接口继承自 MouseEvent
和 Event
的属性。
PointerEvent.altitudeAngle
只读 实验性-
表示换能器(指针或手写笔)轴线与设备屏幕的 X-Y 平面之间的角度。
PointerEvent.azimuthAngle
只读 实验性-
表示 Y-Z 平面与包含换能器(指针或手写笔)轴线和 Y 轴的平面之间的角度。
PointerEvent.persistentDeviceId
只读 实验性-
生成
PointerEvent
的指示设备的唯一标识符。 PointerEvent.pointerId
只读-
导致事件的指针的唯一标识符。
PointerEvent.width
只读-
指针接触几何形状在 X 轴上的大小(幅度),以 CSS 像素为单位。
PointerEvent.height
只读-
指针接触几何形状在 Y 轴上的大小(幅度),以 CSS 像素为单位。
PointerEvent.pressure
只读-
指针输入的归一化压力,范围为
0
到1
,其中0
和1
分别代表硬件能够检测到的最小和最大压力。 PointerEvent.tangentialPressure
只读-
指针输入的归一化切向压力(也称为桶压力或 圆柱体应力),范围为
-1
到1
,其中0
为控件的中立位置。 PointerEvent.tiltX
只读-
Y–Z 平面与包含指针(例如笔式手写笔)轴线和 Y 轴的平面之间的平面角(以度为单位,范围为
-90
到90
)。 PointerEvent.tiltY
只读-
X–Z 平面与包含指针(例如笔式手写笔)轴线和 X 轴的平面之间的平面角(以度为单位,范围为
-90
到90
)。 PointerEvent.twist
只读-
指针(例如笔式手写笔)绕其主轴顺时针旋转的角度(以度为单位),取值范围为
0
到359
。 PointerEvent.pointerType
只读-
指示导致事件的设备类型(鼠标、笔、触摸等)。
PointerEvent.isPrimary
只读-
指示指针是否代表此指针类型的首要指针。
示例
使用 addEventListener()
const para = document.querySelector("p");
para.addEventListener("pointercancel", (event) => {
console.log("Pointer event cancelled");
});
使用 onpointercancel
事件处理程序属性
const para = document.querySelector("p");
para.onpointercancel = (event) => {
console.log("Pointer event cancelled");
};
规范
规范 |
---|
指针事件 # the-pointercancel-event |
指针事件 # dom-globaleventhandlers-onpointercancel |
浏览器兼容性
BCD 表格仅在浏览器中加载