我正在开发一个包含多个input[type=numer]
元素的应用程序。暂时只有安卓。
内置数字键盘有两个问题:
* it's inconsistent (different on different versions of Android)
* it has unnecessary keys (space, dash, comma and "next") which add confusion.
我想要一个只有numbers, comma and backspace
. 那可能吗?
编辑 2013 年 10 月 3 日。第三个问题出现了,这是迄今为止最严重的问题。看起来三星决定从他们的数字键盘中跳过十进制字符(“。”),至少是input[type=numer]
在浏览器中获得焦点时弹出的那个。似乎所有 Galaxy S4 设备都受到了影响(我在 S4 Mini 上看到过,我无法使用很多三星设备……我看到的都是 Nexus 爱好者 :-))。我在谷歌上找不到太多关于这个问题的信息,但我看到 Galaxy S4 用户在 2012 年抱怨过这个问题(几周前我在一台 S3 上尝试过,没问题)。
长话短说,经过仔细考虑后,我决定在 html/javascript 中实现我自己的键盘(三星太重要了,我正因为它而受到不好的评论,我认为我无法做任何事情来修复它)。我正在重写我的应用程序,我会在完成后尝试记住并讲述这个故事。
编辑 2013 年 12 月 3 日。我当前的解决方案(仍处于 alpha 阶段,应用程序重写花费的时间比我预期的要长)是一个完全用 javascript 实现的键盘。我使用常规 <span> 元素而不是 <input> 来防止操作系统键盘弹出。作为一个额外的好处,我可以控制键盘的所有内容,所以我添加了一些算术键(x、-、*、/、(和)),用户可以输入表达式,例如“3x(2+5.5 )”而不是“15”。准备好后(至少还有几周),我会链接到该应用程序。