Navigator: getGamepads() 方法

Baseline 廣泛可用 *

此特性已得到良好確立,可跨多種裝置和瀏覽器版本使用。自 2017 年 3 月起,所有瀏覽器均支援此特性。

* 此特性的某些部分可能存在不同級別的支援。

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

Navigator.getGamepads() 方法返回一個 Gamepad 物件的陣列,陣列中的每個物件代表連線到裝置的每個遊戲手柄。

如果遊戲手柄在會話期間斷開連線,陣列中的元素可能是 null,以便剩餘的遊戲手柄可以保留相同的索引。

語法

js
getGamepads()

引數

無。

返回值

一個 Array 型別的 Gamepad 物件陣列,可能為空。

異常

SecurityError DOMException

此功能的使用被 Permissions Policy 阻止了。

示例

js
window.addEventListener("gamepadconnected", (e) => {
  const gp = navigator.getGamepads()[e.gamepad.index];
  console.log(
    `Gamepad connected at index ${gp.index}: ${gp.id} with ${gp.buttons.length} buttons, ${gp.axes.length} axes.`,
  );
});

規範

規範
Gamepad
# dom-navigator-getgamepads

瀏覽器相容性

另見