我有一个简单的web应用程序,在特定的情况下,我在使用mottie虚拟键盘时遇到了麻烦。
我的屏幕上有许多字段。如果用户单击其中一个文本框(每个文本框都绑定了一个虚拟键盘),则焦点函数会隐藏页面上的其他元素,并放大当前字段/标签。
虚拟键盘在这种状态下工作得很好。当我输入文本,然后单击Accept或单击虚拟键盘矩形外的区域时,焦点模糊,键盘消失,所有字段再次显示。
我遇到的问题是,当用户点击虚拟按键之间的小空间,或虚拟键盘矩形内任何非按键的区域时,键盘保持可见(正如它应该看到的那样),但所有其他元素在按下期间都会在键盘后面的屏幕上闪烁。因此,向下单击会导致焦点从所选元素变得模糊,只是在释放向下单击后立即再次聚焦。
我希望虚拟键盘的一些参数可以使虚拟键盘的任何非键部分成为点击的死区,但我一直无法找到它。有没有人有这方面的经验?谢谢!
发布于 2019-12-21 09:33:03
如果您想要将焦点返回到文本框,那么可以尝试如下所示(demo):
$(function() {
$('#keyboard').keyboard({
visible: function(e, keyboard, el) {
keyboard.$keyboard.on('mousedown', function() {
setTimeout(function() {
keyboard.$preview.focus();
}, 100);
});
}
});
});我一开始是点击鼠标,但直到松开鼠标后它才聚焦。我不明白为什么你看到所有的东西都淡出了(可能是css :active设置?)但这几乎可以立即恢复人们的注意力。
https://stackoverflow.com/questions/59256227
复制相似问题