gpt4 book ai didi

javascript - 在 Wii-U 网络浏览器中捕获游戏 handle 输入键事件

转载 作者:行者123 更新时间:2023-11-29 22:06:05 26 4
gpt4 key购买 nike

Internet Browser - Extended Functionality Wii-U 浏览器的页面指示 A 按钮和控制板应向浏览器发送按键事件。使用下面的示例代码,我能够接收到 A 按钮的事件,但方向键似乎只想在页面上滚动,没有触发任何事件。

我怎样才能正确接收这些事件的通知?

<script>
document.body.onkeypress = function (event) {
var pad = ["LEFT", "UP", "RIGHT", "DOWN"];
var div = document.getElementById("text");
// handle the A button
if (event.keyCode == 13) {
div.innerText = "A";
}
// handle the control pad - this doesn't seem to work
if (event.keyCode >= 37 && event.keyCode <= 40) {
div.innerText = pad[event.keyCode - 37];
}
};
</script>

我宁愿避免轮询 window.wiiu.gamepad 对象,因为我只需要通过控制面板和 A 按钮按键事件提供的输入。

最佳答案

事实证明,A 按钮可以被任何 keydown、keyup 或 keypress 事件捕获,但八向数字键盘只能通过 keydown 和 keyup 事件捕获。您还可以取消该事件,以阻止正常的浏览器处理使用 preventDefault() 在页面上的链接之间移动。

示例代码:

document.body.onkeyup = function (event) {
var pad = ["LEFT", "UP", "RIGHT", "DOWN"];
var div = document.getElementById("text");
// handle the A button
if (event.keyCode == 13) {
div.innerText = "A - KEYUP";
}
// handle the control pad
if (event.keyCode >= 37 && event.keyCode <= 40) {
div.innerText = pad[event.keyCode - 37] + " - KEYUP";
}
// prevent the Wii U browser from processing the event further
event.preventDefault();
return false;
};

document.body.onkeydown = function (event) {
var pad = ["LEFT", "UP", "RIGHT", "DOWN"];
var div = document.getElementById("text");
// handle the A button
if (event.keyCode == 13) {
div.innerText = "A - KEYDOWN";
}
// handle the control pad
if (event.keyCode >= 37 && event.keyCode <= 40) {
div.innerText = pad[event.keyCode - 37] + " - KEYDOWN";
}
// prevent the Wii U browser from processing the event further
event.preventDefault();
return false;
};

document.body.onkeypress = function (event) {
var div = document.getElementById("text");
// handle the A button
if (event.keyCode == 13) {
div.innerText = "A";
}
};

关于javascript - 在 Wii-U 网络浏览器中捕获游戏 handle 输入键事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20917119/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com