Gamepad API

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.

实验性: 这是一项实验性技术
在将其用于生产之前,请仔细检查浏览器兼容性表格

Gamepad API 可以给予开发者一种简单、统一的方式来识别并响应游戏控制器(手柄)。其中包含了三个接口、两个事件、一个特殊函数,用来响应控制器的连接与断开、获取其他关于控制器的信息以及识别当前是哪个按键或是哪个控制器被按下了。

接口

Gamepad

表示已连接的游戏控制器。

GamepadButton

表示已连接手柄上的一个按键。

GamepadEvent

表示与控制器相关的事件的事件对象。

实验性 Gamepad 扩展

GamepadHapticActuator

表示控制器中的硬件,用于向用户提供触觉反馈(如果可用)最常见的是振动硬件。

GamepadPose

表示控制器的位置方向(例如,在 3D 空间中的位置和方向)于 WebVR 控制器中。

另请参阅 Gamepad 接口扩展,来获取上方的功能的相关信息。

其他接口扩展

Navigator 对象中的一个扩展。会返回一个 名为Gamepad 的数组对象,其中每个数组元素对应一个已连接的控制器。

Window 事件

Window.ongamepadconnected

表示当控制器连接时(当gamepadconnected 事件触发时)运行的处理程序。

Window.ongamepaddisconnected

表示当控制器断开连接时(当gamepaddisconnected 事件触发时)运行的处理程序。

教程与指南

规范

Specification
Gamepad
# gamepad-interface
Gamepad Extensions
# partial-gamepad-interface

浏览器兼容性

BCD tables only load in the browser

参见