如何隐藏软键盘并保持输入焦点

时间:2018-02-06 04:29:32

标签: javascript android google-chrome mobile barcode-scanner

我有一个运行Android 4.4.4的条形码扫描仪(honeywell ct50)页面, 当输入文本框处于焦点时,软键盘会自动弹出。 是否有任何解决方案可以隐藏它? 我已经阅读过建议,主要是让输入失去焦点或只是阅读, 但我需要把注意力集中在读取条形码的输入上。

我试过了 1.在onfocus事件中执行event.preventDefault(),它不起作用。 2.获取document.keypress()上的条形码,如下所示的帖子中的解决方案,但没有从我的扫描仪获得。 javascript - hide mobile default keyboard but keep input field active

欢迎任何想法。

2 个答案:

答案 0 :(得分:1)

对我来说,在某些时候起作用的是将ion-input type =“ text”设置为只读,但是现在在设置该属性时不起作用。也许试试看。

答案 1 :(得分:0)

旧主题,但这是至少适用于android 6和7的解决方案:

yourInput = document.getElementById('yourInputElement');
yourInput.readOnly = true;
yourInput.focus();
setTimeout(function(){document.getElementById('yourInputElement').readOnly = false;}, 50);

您将输入放在焦点之前的readOnly = true中。
键盘不会出现。
然后将输入放回readOnly = false,但不会立即。
因此,您可以在不弹出键盘的情况下使用扫描仪。