提问人:Christian Angelo 提问时间:11/16/2023 更新时间:11/16/2023 访问量:35
键盘 event.code 在移动设备中不起作用 (sveltekit)
keyboard event.code doesnt work in mobile (sveltekit)
问:
如何处理手机中的键盘输入,尤其是“空格”键,因为当我使用 event.key、event.keyCode、event.code 时,没有任何工作,空格不起作用,它就像 event.code 不同,我有研究如何处理键盘但没有任何效果
function handleKeyDown() {
if (event.code === "Space") {
event.preventDefault();
if (game === "in progress") {
nextWord();
}
}
if (event.code === "Backspace") {
event.preventDefault();
checkPrevLetter();
}
if (game === "waiting for input") {
startGame();
}
}
function nextWord() {
const isNotFirstLetter = letterIndex !== 0;
const isOneLetterWord = words[wordIndex].length === 1;
if (isNotFirstLetter || isOneLetterWord) {
if (wordIndex < words.length) {
const wordEl = wordsEl.children[wordIndex];
const letterEls = wordEl.querySelectorAll(".letter");
for (let i = letterIndex; i < letterEls.length; i++) {
letterEls[i].dataset.letter = "skipped";
}
}
wordIndex += 1;
letterIndex = 0;
increaseScore();
moveCaretToNextWord();
}
}
这就是我在按空格键后处理键并转到下一个单词的方式,您可以在移动设备上的 type-masters.vercel.app 中尝试一下,当在最后一个字母和按空格键时,它不能像桌面版那样转到下一个单词,谢谢您的回答!
答: 暂无答案
评论
input
的 data
属性中读取添加的内容。似乎没有捕获粘贴,因此该事件可能也需要处理。paste