如何在移动设备上调出键盘以捕获用于在HTML5画布上绘制的输入?

Bar*_*urg 5 javascript mobile jquery html5 canvas

我正在尝试在可在移动网站上运行的javascript / html5 canvas中制作填字游戏。我找到了这个库(modit):https ://mod.it/8UmnmJ11 ,它似乎可以很好地工作,并且在台式机上看起来不错,但是移动版却没有带键盘。

如何在移动设备上调出键盘以捕获用于在HTML5画布上绘制的输入?

该库使用HTML5画布,从而使拼图具有良好的外观。我知道我可以使用div和输入来制作这样的填字游戏,但是我更愿意修复该库。

Bar*_*urg 3

由于这是迄今为止最好的答案,我将发表我的评论作为答案:

我所做的是创建一个隐藏的输入字段并将焦点放在它上面。然后捕获 keyup 事件。但这是一个“hacky”解决方案,我认为应该有更好的方法。

我不再有代码,但我会发布一些未经测试的代码。

网页:

<input id="hiddenInput" type="text" name="hiddenInput" autofocus />
Run Code Online (Sandbox Code Playgroud)

和 JavaScript(jQuery):

$("#hiddenInput").keyup(function(e) {
    if (e.which !== 0) {
       var character = String.fromCharCode(e.which));
       doSomethingWith(character);
    }
});
Run Code Online (Sandbox Code Playgroud)

我不确定 css 是否显示:无;效果很好,在这种情况下使用visibility:hidden; 并确保它不会使用负边距推送任何内容。