Add mobile on-screen keyboard for touch devices with visual feedback

This commit is contained in:
Andy Dixon
2026-01-14 06:57:24 +00:00
parent 759d032e7c
commit 7330090ea3
3 changed files with 271 additions and 1 deletions
+53
View File
@@ -24,6 +24,59 @@
</footer>
</main>
<!-- Mobile on-screen keyboard (only shown on touch devices) -->
<div id="mobile-keyboard" class="mobile-keyboard">
<div class="keyboard-row">
<button class="keyboard-key" data-key="1">1</button>
<button class="keyboard-key" data-key="2">2</button>
<button class="keyboard-key" data-key="3">3</button>
<button class="keyboard-key" data-key="4">4</button>
<button class="keyboard-key" data-key="5">5</button>
<button class="keyboard-key" data-key="6">6</button>
<button class="keyboard-key" data-key="7">7</button>
<button class="keyboard-key" data-key="8">8</button>
<button class="keyboard-key" data-key="9">9</button>
<button class="keyboard-key" data-key="0">0</button>
</div>
<div class="keyboard-row">
<button class="keyboard-key" data-key="q">Q</button>
<button class="keyboard-key" data-key="w">W</button>
<button class="keyboard-key" data-key="e">E</button>
<button class="keyboard-key" data-key="r">R</button>
<button class="keyboard-key" data-key="t">T</button>
<button class="keyboard-key" data-key="y">Y</button>
<button class="keyboard-key" data-key="u">U</button>
<button class="keyboard-key" data-key="i">I</button>
<button class="keyboard-key" data-key="o">O</button>
<button class="keyboard-key" data-key="p">P</button>
</div>
<div class="keyboard-row">
<button class="keyboard-key" data-key="a">A</button>
<button class="keyboard-key" data-key="s">S</button>
<button class="keyboard-key" data-key="d">D</button>
<button class="keyboard-key" data-key="f">F</button>
<button class="keyboard-key" data-key="g">G</button>
<button class="keyboard-key" data-key="h">H</button>
<button class="keyboard-key" data-key="j">J</button>
<button class="keyboard-key" data-key="k">K</button>
<button class="keyboard-key" data-key="l">L</button>
</div>
<div class="keyboard-row">
<button class="keyboard-key" data-key="z">Z</button>
<button class="keyboard-key" data-key="x">X</button>
<button class="keyboard-key" data-key="c">C</button>
<button class="keyboard-key" data-key="v">V</button>
<button class="keyboard-key" data-key="b">B</button>
<button class="keyboard-key" data-key="n">N</button>
<button class="keyboard-key" data-key="m">M</button>
<button class="keyboard-key backspace wide" data-key="backspace">←</button>
</div>
<div class="keyboard-row">
<button class="keyboard-key space" data-key=" ">SPACE</button>
<button class="keyboard-key enter wide" data-key="enter">ENTER</button>
</div>
</div>
<script type="module" src="./js/main.js"></script>
</body>
</html>