元素:pointercancel 事件

当浏览器确定不太可能再有指针事件,或者在 pointerdown 事件触发后,指针随后被用于通过平移、缩放或滚动来操作视窗时,就会触发 pointercancel 事件。

一些触发 pointercancel 事件的场景示例

  • 发生取消指针活动的硬件事件。这可能包括,例如,用户使用应用程序切换器界面或移动设备上的“主页”按钮切换应用程序。
  • 在指针处于活动状态时,设备的屏幕方向发生改变。
  • 浏览器判断用户意外启动了指针输入。例如,如果硬件支持手掌拒绝功能,以防止用手掌抵住显示屏,同时使用触控笔会意外触发事件。
  • touch-action CSS 属性会阻止输入继续。
  • 当用户与太多同时指针交互时,浏览器会为所有现有指针触发此事件(即使用户仍然触摸屏幕)。

注意: 在触发 pointercancel 事件后,浏览器还会发送 pointerout,然后是 pointerleave

语法

在方法中使用事件名称,如 addEventListener(),或者设置事件处理程序属性。

js
addEventListener("pointercancel", (event) => {});

onpointercancel = (event) => {};

事件类型

事件属性

此接口继承自 MouseEventEvent 的属性。

PointerEvent.altitudeAngle 只读 实验性

表示换能器(指针或手写笔)轴线与设备屏幕的 X-Y 平面之间的角度。

PointerEvent.azimuthAngle 只读 实验性

表示 Y-Z 平面与包含换能器(指针或手写笔)轴线和 Y 轴的平面之间的角度。

PointerEvent.persistentDeviceId 只读 实验性

生成 PointerEvent 的指示设备的唯一标识符。

PointerEvent.pointerId 只读

导致事件的指针的唯一标识符。

PointerEvent.width 只读

指针接触几何形状在 X 轴上的大小(幅度),以 CSS 像素为单位。

PointerEvent.height 只读

指针接触几何形状在 Y 轴上的大小(幅度),以 CSS 像素为单位。

PointerEvent.pressure 只读

指针输入的归一化压力,范围为 01,其中 01 分别代表硬件能够检测到的最小和最大压力。

PointerEvent.tangentialPressure 只读

指针输入的归一化切向压力(也称为桶压力或 圆柱体应力),范围为 -11,其中 0 为控件的中立位置。

PointerEvent.tiltX 只读

Y–Z 平面与包含指针(例如笔式手写笔)轴线和 Y 轴的平面之间的平面角(以度为单位,范围为 -9090)。

PointerEvent.tiltY 只读

X–Z 平面与包含指针(例如笔式手写笔)轴线和 X 轴的平面之间的平面角(以度为单位,范围为 -9090)。

PointerEvent.twist 只读

指针(例如笔式手写笔)绕其主轴顺时针旋转的角度(以度为单位),取值范围为 0359

PointerEvent.pointerType 只读

指示导致事件的设备类型(鼠标、笔、触摸等)。

PointerEvent.isPrimary 只读

指示指针是否代表此指针类型的首要指针。

示例

使用 addEventListener()

js
const para = document.querySelector("p");

para.addEventListener("pointercancel", (event) => {
  console.log("Pointer event cancelled");
});

使用 onpointercancel 事件处理程序属性

js
const para = document.querySelector("p");

para.onpointercancel = (event) => {
  console.log("Pointer event cancelled");
};

规范

规范
指针事件
# the-pointercancel-event
指针事件
# dom-globaleventhandlers-onpointercancel

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅