GamepadHapticActuator: playEffect() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Die playEffect() Methode des GamepadHapticActuator Interfaces sorgt dafür, dass die Hardware einen bestimmten Vibrationseffekt abspielt.

Syntax

js
playEffect(type, params)

Parameter

type

Ein String, der den gewünschten Effekt darstellt. Mögliche Werte sind "dual-rumble" und "trigger-rumble", und ihre Effekte können je nach Hardwaretyp variieren. Weitere Details zu den Effektarten finden Sie unter GamepadHapticActuator.effects.

params

Ein Objekt, das einen gewünschten haptischen Effekt beschreibt.

Erwartete Werte sind:

duration Optional

Die Dauer des Effekts in Millisekunden. Standardwert ist 0.

startDelay Optional

Die Verzögerung in Millisekunden, bevor der Effekt gestartet wird. Standardwert ist 0.

strongMagnitude Optional

Die Rumblesintensität der Niederfrequenz- (starken) Rumblemotoren, normalisiert auf den Bereich zwischen 0.0 und 1.0. Standardwert ist 0.0.

weakMagnitude Optional

Die Rumblesintensität der Hochfrequenz- (schwachen) Rumblemotoren, normalisiert auf den Bereich zwischen 0.0 und 1.0. Standardwert ist 0.0.

leftTrigger (nur relevant für "trigger-rumble" Effekte) Optional

Die Rumblesintensität des unteren linken Frontabzugs, normalisiert auf den Bereich zwischen 0.0 und 1.0. Standardwert ist 0.0.

rightTrigger (nur relevant für "trigger-rumble" Effekte) Optional

Die Rumblesintensität des unteren rechten Frontabzugs, normalisiert auf den Bereich zwischen 0.0 und 1.0. Standardwert ist 0.0.

Hinweis: Ein neuer Aufruf von playEffect() überschreibt einen vorhergehenden laufenden Aufruf.

Rückgabewert

Ein Promise, das mit "complete" aufgelöst wird, wenn der Effekt erfolgreich abgeschlossen wird, oder "preempted", wenn der aktuelle Effekt gestoppt oder durch einen anderen Effekt ersetzt wird.

Das Promise kann mit folgenden Ausnahmearten abgelehnt werden:

InvalidStateError DOMException

Das aktuelle Dokument ist nicht aktiv oder versteckt.

NotSupportedError DOMException

Der angeforderte type wird vom aktuellen Gamepad-Aktor nicht unterstützt.

TypeError DOMException

Der angeforderte type ist kein gültiger Effekt-Typ.

Beispiele

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

gamepad.vibrationActuator
  .playEffect("dual-rumble", {
    startDelay: 0,
    duration: 200,
    weakMagnitude: 1.0,
    strongMagnitude: 1.0,
  })
  .then((result) => console.log(result));
// Should log "complete" if effect successfully runs

Spezifikationen

Specification
Gamepad
# dom-gamepadhapticactuator-playeffect

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
playEffect
params.leftTrigger parameter
Experimental
params.rightTrigger parameter
Experimental
trigger-rumble effect type
Experimental

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.

Siehe auch