taro h5 ios解决input不能自动获取焦点拉起键盘

描述:页面中有个按钮,点击跳转到第二个页面(有input),能直接获取焦点拉起键盘输入

安卓:

直接用focus()

ios:

focus无效,必须手动拉起

原理:

点击按钮的时候拉起一个此页面隐藏的input或者全局隐藏的input拉起键盘, 跳转后通过setSelectionRange 去设置光标

步骤一:定一个全局的隐藏input,并挂到window上
步骤二:第一个页面点击按钮,调起全局input, 然后跳转
步骤三:在第二个页面去设置页面中的input光标


这里的坑:

1)querySelector 是获取的页面第一个指定dom

  1. 必须用settimeout, 否则键盘能拉起,但是光标不在input中,不能直接输入

3)这里的input是原生的,可以直接获取到,如果用第三方ui, 比如taroui中的 AtSearchBar ,必须用最里面的input, 不能用AtSearchBar 上其他的dom, 并且要放到settimeout中, 否则为null



相关推荐
linda26183 小时前
本质上,Taro 是一个 跨平台编译框架
前端·taro
namehu2 天前
Taro 小程序 Video 组件 referrer-policy="origin" 属性失效排查记
前端·taro
vvilkim13 天前
Taro 状态管理全面指南:从本地状态到全局方案
taro
vvilkim16 天前
Taro:跨端开发的终极解决方案
taro
雨中的风铃子17 天前
taro小程序如何实现新用户引导功能?
小程序·taro
云边小卖铺.18 天前
React+Taro创建小程序
react.js·小程序·taro
沈春庭20 天前
【MoodVine】Taro+React对于大文件的轮询请求实现
前端·javascript·react.js·微信小程序·taro·promise
楽码24 天前
AI提问:进行深度交互
aigc·openai·taro
不爱吃糖的程序媛1 个月前
鸿蒙版Taro 搭建开发环境
华为·harmonyos·taro
PyAIGCMaster1 个月前
react+taro 开发第五个小程序,解决拼音的学习
react.js·小程序·taro