--- title: Gamepad slug: Web/API/Gamepad translation_of: Web/API/Gamepad ---

{{APIRef("Gamepad API")}}

L'interface Gamepad de l'API Gamepad définit une manette individuelle ou un autre contrôleur, autorisant l'accès à des informations telles que les boutons pressés, la position des axes et l'identifiant.

Un objet Gamepad peut être retourné de deux manières :

Propriétés

{{domxref("Gamepad.axes")}} {{readonlyInline}}
Un tableau représentant les contrôles avec les axes présents sur le dispositif (par exemple : les joysticks analogiques).
{{domxref("Gamepad.buttons")}} {{readonlyInline}}
Un tableau d'objets {{domxref("gamepadButton")}} représentant les boutons présents sur le dispositif.
{{domxref("Gamepad.connected")}} {{readonlyInline}}
Un booléen indiquant si la manette est toujours connectée au système.
{{domxref("Gamepad.displayId")}} {{readonlyInline}}
Retourne {{domxref("VRDisplay.displayId")}} associé à {{domxref("VRDisplay")}} — Le VRDisplay dont la manette contrôle la scène affichée.
{{domxref("Gamepad.id")}} {{readonlyInline}}
Un {{domxref("DOMString")}} contenant l'information d'identification de la manette.
{{domxref("Gamepad.index")}} {{readonlyInline}}
Un entier qui s'auto-incrémente pour être unique à chaque dispositif actuellement connecté au système.
{{domxref("Gamepad.mapping")}} {{readonlyInline}}
Une chaîne de caractères indiquant si le navigateur a remappé les contrôles du dispositif à un layout connu.
{{domxref("Gamepad.timestamp")}} {{readonlyInline}}
Un {{domxref("DOMHighResTimeStamp")}} représentant la dernière fois que les données pour cette manette a été mise à jour. Noter que cette propriété n'est pas supportée partout.

Extensions expérimentales apportées à Gamepad

Les interfaces suivantes sont définies dans la spécification {{SpecName("GamepadExtensions")}} et fournissent un accès à des fonctionnalités expérimentales tels que les retours haptiques et informations de position des contrôleurs WebVR.

{{domxref("Gamepad.hand")}} {{readonlyinline}}
Une énumération qui définit dans quelle main le contrôleur est tenue (ou dans laquelle il est probablement tenue).
{{domxref("Gamepad.hapticActuators")}} {{readonlyinline}}
Un tableau contenant des objets {{domxref("GamepadHapticActuator")}} dont chacun représente un matériel disponible pour le contrôleur pour les retours haptiques.
{{domxref("Gamepad.pose")}} {{readonlyinline}}
Un objet {{domxref("GamepadPose")}} qui représente la position et l'orientation d'un contrôleur WebVR dans l'espace en trois dimensions.

Exemples

window.addEventListener("gamepadconnected", function(event) {
  console.log("Contrôleur connecté à %d: %s. %d boutons, %d axes.",
  event.gamepad.index, event.gamepad.id,
  event.gamepad.buttons.length, event.gamepad.axes.length);
});

Spécifications

Spécification Statut Commentaire
{{SpecName("Gamepad", "#gamepad-interface", "Gamepad")}} {{Spec2("Gamepad")}} Première définition
{{SpecName('WebVR', '#gamepad-getvrdisplays-attribute', 'displayId')}} {{Spec2("WebVR")}}

Définit la propriété {{domxref("Gamepad.displayId")}}.

{{SpecName("GamepadExtensions", "#partial-gamepad-interface", "Gamepad extensions")}} {{Spec2("GamepadExtensions")}} Définit les extensions expérimentales

Compatibilités des navigateurs

{{Compat("api.Gamepad")}}

Voir aussi