触摸:force 属性

Touch.force 只读属性返回用户对 Touch 点的触摸表面的压力量。

一个表示用户施加在触摸表面上的压力量的float值。这是一个介于0.0(无压力)和1.0(硬件可以识别的最大压力量)之间的值。如果未知值(例如触摸设备不支持此属性),则返回0.0。在已知力的环境中,force 属性表示的绝对压力和压力级别的灵敏度可能会有所不同。

示例

此示例说明了如何使用 Touch 接口的Touch.force属性。此属性是应用压力的相对值,范围为0.01.0,其中0.0表示无压力,1.0表示触摸设备能够感知到的最高压力级别。

在以下代码片段中,touchstart 事件处理程序遍历targetTouches列表并记录每个触摸点的force值,但代码可以根据值调用不同的处理。

js
someElement.addEventListener(
  "touchstart",
  (e) => {
    // Iterate through the list of touch points and log each touch
    // point's force.
    for (let i = 0; i < e.targetTouches.length; i++) {
      // Add code to "switch" based on the force value. For example
      // minimum pressure vs. maximum pressure could result in
      // different handling of the user's input.
      console.log(`targetTouches[${i}].force = ${e.targetTouches[i].force}`);
    }
  },
  false,
);

规范

规范
触摸事件
# dom-touch-force

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。