我正在使用 Gamepad API“gamepadconnected”功能,该功能无法正常工作。然而,“gamepaddisconnected”功能由于某种原因起作用。连接我的蓝牙 Controller 后,控制台中没有任何显示,但是,它确实显示了断开连接时显示的信息。
我这里的内容非常基本和标准:
window.addEventListener("gamepadconnected", function(e) {
console.log("Controller connected");
});
window.addEventListener("gamepaddisconnected", function(e) {
console.log("Controller disconnected");
});
我在这里缺少什么?哪里出了问题?我确保第一个焦点页面是包含上面脚本的页面。感谢您的帮助。
最佳答案
MDN 指出“如果加载页面时游戏 handle 已连接,则当用户按下按钮或移动轴时,gamepadconnected 事件将分派(dispatch)到焦点页面。”。因此,当您连接 handle 时,您的页面并不总是会收到 gamepadconnected
事件。 https://developer.mozilla.org/en-US/docs/Web/API/Gamepad_API/Using_the_Gamepad_API
所以最好例如让用户按下按钮来启动您的应用程序。当有多个游戏 handle 连接到计算机并且您的应用程序必须知道使用哪一个时,这也很有用。
关于javascript - 游戏 handle API "gamepadconnected"不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44735703/