我正在开发一个优惠券公司的前端网站,我有一个页面,用户只需要输入电话号码和$$消费。我们想出了一个用Javascript构建的有趣的屏幕键盘,它易于使用,而且速度快。然而,我正在寻找一种解决方案,当用户聚焦并在这些字段中输入文本/数字时,阻止软键盘弹出。
我知道HTML5提出的“号码/电话/电子邮件”类型的属性。然而,冒着听起来疯狂的风险,我真的想只使用我的屏幕键盘。
注:本网站主要针对平板电脑。
谢谢。
发布于 2012-06-08 06:20:33
由于软键盘是操作系统的一部分,因此通常情况下,您无法隐藏它-而且,在iOS上,隐藏键盘会使元素失去焦点。
但是,如果对输入使用onFocus属性,然后立即对文本输入执行blur()操作,键盘将隐藏自身,并且onFocus事件可以设置一个变量来定义最后聚焦的文本输入。
然后更改页面上的键盘,使其仅更改最后聚焦的文本输入(使用变量检查),而不是模拟按键。
发布于 2014-03-20 04:43:17
斯科特·S的回答非常有效。
我正在为手机编写一个基于web的电话拨号盘,每当用户在键盘上按下一个数字(由表中的td span元素组成)时,软键盘就会弹出来。我还希望用户不能进入正在拨打的号码的输入框。这实际上在一次拍摄中解决了这两个问题。使用了以下内容:
<input type="text" id="phone-number" onfocus="blur();" />发布于 2016-09-08 17:19:01
对于更多的读者/搜索者:
正如Rene Pot在this topic上指出的那样,
单击通过向输入字段添加属性readonly (或readonly="readonly"),您应该可以防止任何人在其中键入任何内容,但仍然可以在该字段上启动
事件。
使用此方法,您可以避免弹出“软”键盘,并仍然启动单击事件/填充任何屏幕键盘的输入。
此解决方案也适用于日期-时间选择器,它通常已经实现了控件。
https://stackoverflow.com/questions/10940287
复制相似问题