(至少)使用 GBoard 键盘时,按下
Tab按钮(右下角带有箭头的按钮)时,
onKeyDown
和 onKeyUp
似乎不会触发。
这导致我们的 React 应用程序出现问题,该按钮的行为与按真实键盘上的 Tab 按钮完全相同,但我们可以在桌面和其他设备上抑制其行为。
我已经确认这不是 React 问题,就好像我尝试与下面完全相同的操作一样,在 Android/GBoard 上按 Tab 时不会触发该事件:
<input id="text-field" type="text" placeholder="Press Tab here" />
<input id="text-field-2" type="text" />
<script>
$('#text-field').on('keydown', function (e) {
alert(e.key);
});
</script>
使用 Google Chrome 和 GBoard 在 Android 10 和 Android 11 上进行测试。
知道如何处理该按钮的按下吗?
这是有意/记录的吗?
如果您不需要保留“Tab 键”行为,请使用 enterkeyhint 属性:
<input type="text" enterkeyhint="done"/>
这会将“下一步”按钮替换为输入按钮,您可以通过
keydown
将其视为“输入”。