PointerEvent:pointerType 属性

Baseline 广泛可用 *

此特性已经十分成熟,可在许多设备和浏览器版本上使用。自 2020 年 7 月以来,它已在各大浏览器中可用。

* 此特性的某些部分可能存在不同级别的支持。

PointerEvent 接口的 pointerType 只读属性表示引发给定指针事件的设备类型(鼠标、笔或触摸)。

事件的指针类型。支持的值是以下字符串

"mouse"

事件由鼠标设备生成。

"pen"

事件由笔或手写笔设备生成。

"touch"

事件由触摸生成,例如手指。

如果浏览器无法检测到设备类型,则该值可以是一个空字符串("")。如果浏览器支持上述以外的指针设备类型,则该值应带有供应商前缀,以避免不同设备类型之间的名称冲突。

示例

此示例说明如何使用 pointerType 属性的值来调用适当的指针类型处理函数。

js
targetElement.addEventListener("pointerdown", (event) => {
  // Call the appropriate pointer type handler
  switch (event.pointerType) {
    case "mouse":
      process_pointer_mouse(event);
      break;
    case "pen":
      process_pointer_pen(event);
      break;
    case "touch":
      process_pointer_touch(event);
      break;
    default:
      console.log(`pointerType ${event.pointerType} is not supported`);
  }
});

规范

规范
指针事件
# dom-pointerevent-pointertype

浏览器兼容性