尝试查看是否找到针对iOS的解决方案,以防止通过编程将焦点集中在输入上吗?

https://jsfiddle.net/88bjy3rL/

$('div').on('touchstart', function(event) {
  $('textarea').focus();
  console.log('touchstart');
});

$("div").trigger('touchstart');

在上面的示例中,touchstart事件仍在iOS上触发,使用Safari Web Inspector输出“touchstart”,但是未将重点放在文本区域上。

单击测试词以手动触发事件将在设置焦点时起作用(但是将focus()包装在setTimeout中将不起作用)

是否有任何实际可行的解决方案来设置焦点而无需用户干预即可打开键盘?

最佳答案

如果您使用的是Cordova,则可以将以下内容添加到config.xml中。

<preference name="KeyboardDisplayRequiresUserAction" value="false" />

当将焦点设置在输入上时,这可使键盘自动打开。

关于javascript - 通过触发对输入的关注来打开iOS键盘,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40362654/

10-11 06:40