Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

GamepadHapticActuator: Methode playEffect()

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Want more browser support for this feature? Tell us why.

Die Methode playEffect() der Schnittstelle GamepadHapticActuator veranlasst die Hardware, einen bestimmten Vibrationseffekt auszugeben.

Syntax

js
playEffect(type, params)

Parameter

type

Ein String, der den gewünschten Effekt angibt. Mögliche Werte sind "dual-rumble" und "trigger-rumble". Ihre Wirkung kann je nach Hardwaretyp variieren. Weitere Einzelheiten zu den Effekttypen finden Sie unter GamepadHapticActuator.effects.

params

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

Folgende Werte werden erwartet:

duration Optional

Die Dauer des Effekts in Millisekunden. Der Standardwert ist 0.

startDelay Optional

Die Verzögerung in Millisekunden, bevor der Effekt beginnt. Der Standardwert ist 0.

strongMagnitude Optional

Die Vibrationsintensität der niederfrequenten (starken) Vibrationsmotoren, normiert auf den Bereich zwischen 0.0 und 1.0. Der Standardwert ist 0.0.

weakMagnitude Optional

Die Vibrationsintensität der hochfrequenten (schwachen) Vibrationsmotoren, normiert auf den Bereich zwischen 0.0 und 1.0. Der Standardwert ist 0.0.

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

Die Vibrationsintensität des vorderen Triggers unten links, normiert auf den Bereich zwischen 0.0 und 1.0. Der Standardwert ist 0.0.

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

Die Vibrationsintensität des vorderen Triggers unten rechts, normiert auf den Bereich zwischen 0.0 und 1.0. Der Standardwert ist 0.0.

Hinweis: Ein erneuter Aufruf von playEffect() überschreibt einen zuvor gestarteten, noch laufenden Aufruf.

Rückgabewert

Ein Promise, das mit "complete" erfüllt wird, wenn der Effekt erfolgreich abgeschlossen wurde, oder mit "preempted", wenn der aktuelle Effekt beendet oder durch einen anderen ersetzt wird.

Das Promise kann mit einer der folgenden Ausnahmen zurückgewiesen werden:

InvalidStateError DOMException

Das aktuelle Dokument ist nicht aktiv oder ist verborgen.

NotSupportedError DOMException

Der Aktuator des aktuellen Gamepads unterstützt den angeforderten type nicht.

TypeError

Der angeforderte type ist kein gültiger Effekttyp.

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

Spezifikation
Gamepad
# dom-gamepadhapticactuator-playeffect

Browser-Kompatibilität

Siehe auch