此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Navigator:getGamepads() 方法

基线 广泛可用 *

自 2017年3月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

* 此特性的某些部分的支持程度可能有所不同。

安全上下文: 此特性仅在一些支持的浏览器安全上下文(HTTPS)中可用。

Navigator.getGamepads() 方法返回一个包含 Gamepad 数组对象,每个对象代表与设备相连的一个游戏手柄。

如果游戏手柄在过程断开连接,则数组中的元素可能为 null,但剩余的游戏手柄的索引保持不变。

语法

js
getGamepads()

参数

无。

返回值

一个 Gamepad 对象的数组,最终可能为空。

异常

SecurityError DOMException

权限策略阻止了此特性的使用。

示例

js
window.addEventListener("gamepadconnected", (e) => {
  const gp = navigator.getGamepads()[e.gamepad.index];
  console.log(
    `游戏手柄在索引 ${gp.index} 处已连接:其 ID 为 ${gp.id},具有 ${gp.buttons.length} 个按键和 ${gp.axes.length} 个轴。`,
  );
});

规范

规范
Gamepad
# dom-navigator-getgamepads

浏览器兼容性

参见