天天看点

iOS下无法触发focus事件的问题

iOS下无法触发focus事件的问题

如上面代码:

现象:运行后,input的focus事件,发现安卓稳定出现小键盘,但是ios不触发键盘。

原因:在ios中,想要触发键盘,只能是用户手动的选择事件 才能弹出键盘。网上说这是ios的安全机制。应该避免用户不是直接操作的方法来获取 input 焦点。而我上面的代码,focus()方法放在animate这个方法里面,不属于用户直接手动的选择事件,所以在ios上focus()没有触发

解决方法:

iOS下无法触发focus事件的问题

我目前还没有想到非常好的解决方法,只要把focus()方法移到外面,当用户手动点击input框时就触发会执行focus()方法了