停止输入失去对虚拟键盘单击的关注

时间:2020-02-17 15:06:52

标签: javascript html css angular

我为信息亭应用程序创建了自定义虚拟键盘​​。问题是每次您单击键盘键时,输入字段都会失去焦点。 任何帮助,将不胜感激。

2 个答案:

答案 0 :(得分:0)

防止元素聚焦,然后将焦点返回到所需字段。

$('#div').on('mousedown', function(event) {
   event.preventDefault();
   $('#field').focus();
});

答案 1 :(得分:0)

一旦输入失去对虚拟键盘单击的关注,您可以将焦点移回。

let input = document.getElementById('input')
input.focus() // focus on input on page load

function handleInput (key) {
 input.value += key // add key value to input
}
<button onclick="handleInput('a')">a</button>
<button onclick="handleInput('b')">b</button>
<button onclick="handleInput('c')">c</button>

<input onfocusout="this.focus()" id="input"/> <!-- focus on input back on onfocusout ie. when user click elsewhere -->

输入始终是焦点。