我正在制作一个结帐屏幕,该屏幕将在与条形码扫描仪相连的触摸屏上显示,用户侧无法访问其他鼠标或键盘。扫描器将扫描到一个文本输入框,即使有人不小心在其外部单击,我也必须始终将其突出显示并处于活动状态,而无需他们再次在文本输入中单击以重新调整其焦点。
我有一个输入文本框,条形码将在加载下面的jquery时扫描成焦点并处于活动状态,但是有没有一种解决方案可以使焦点始终保持焦点,即使您单击或触摸输入字段之外?到目前为止,我已经可以将所有重点放在负载上:
$('input[name="patronid"]').focus();
因此,即使页面具有页脚和滚动广告空间等其他元素,我唯一要关注的元素是带有文本框和按钮的输入字段,以便在扫描时提交条形码。希望有人能帮忙!
答案 0 :(得分:2)
只要组件失去焦点,就会发生blur
事件。只要您在此输入中遇到模糊事件,就可以再次抓住焦点。
答案 1 :(得分:0)
$('input[name="patronid"]').focus();
$('input[name="patronid"]').blur(function(){
$('input[name="patronid"]').focus();
});
$('button').click(function(){
console.log('click detected - returning now to input field');
console.log('More can be done in here, if required');
//Turn off the .blur if needed
$('input[name="patronid"]').off('blur');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<input name="patronid" />
<button>Ok 2 Click</button>