GamepadHapticActuator: reset() 方法

可用性有限

此特性不是基线特性,因为它在一些最广泛使用的浏览器中不起作用。

GamepadHapticActuator 接口的 reset() 方法会停止硬件播放当前正在进行的振动效果。

语法

js
reset()

参数

无。

返回值

如果效果重置成功,则 Promise 解析为 "complete";如果效果被停止或被另一个效果替换,则 Promise 解析为 "preempted"

Promise 可能会因以下异常类型而拒绝:

InvalidStateError DOMException

如果当前文档未激活或处于隐藏状态,则 Promise 将因 InvalidStateError 而拒绝。

示例

js
const gamepad = navigator.getGamepads()[0];

setTimeout(() => {
  gamepad.vibrationActuator.reset();
}, 150);

gamepad.vibrationActuator
  .playEffect("dual-rumble", {
    startDelay: 0,
    duration: 200,
    weakMagnitude: 1.0,
    strongMagnitude: 1.0,
  })
  .then((result) => console.log(result));
// Should log "preempted" because reset() will run before the effect ends

规范

规范
Gamepad
# dom-gamepadhapticactuator-reset

浏览器兼容性

另见