Vue项目中input框focus时不调出键盘问题的解决
input框focus时不调出键盘问题
在移动端,实现input框获得焦点的同时不会唤起手机键盘。
亲测有效!!!
<input type="text" placeholder="收货地址" v-model="address3" @focus.prevent="showcountF" ref="address" />
showcountF(){
this.showcount=true;
this.$refs.address.setAttribute('readonly', 'readonly');
},自动获取input焦点(内含ios不能唤起键盘解决方法)
为了实现自动唤起键盘,再点击写评论之后会出现input框紧接着吊起键盘
最开始的用法
在input出现之后加上
this.$nextTick(() => {
this.$refs.input.focus()
})为了页面的其他功能,我在上述代码之后重新调用了加载页面数据的方法,发现该方法不生效了,具体解决办法用延时器
setTimeOut(()=>{
this.$refs.input.focus()
}, 500)键盘正常唤起!
ps:延时时间不能过短,因为有页面重新渲染效果,延时时间过短会导致延时不在生效!
最后,该方法在ios中不可用,因为ios为了保护安全,禁止自动获取输入框focus方法!
如果想要解决ios不生效办法
在App的配置文件(config.xml),里面默认会有一句
<preference name="KeyboardDisplayRequiresUserAction" value="true" />
这里面的大概意思就是,键盘的显示需要用户去触发,而且是设置为true的!!!所以只需要把true改为false即可
<preference name="KeyboardDisplayRequiresUserAction" value="false" />
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Vue2 Element Schema Form 配置式生成表单的实现
本文主要介绍了Vue2 Element Schema Form 配置式生成表单的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-05-05
elementui中tabel组件的scope.$index的使用及说明
这篇文章主要介绍了elementui中tabel组件的scope.$index的使用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-10-10
vue 如何添加全局函数或全局变量以及单页面的title设置总结
本篇文章主要介绍了vue 如何添加全局函数或全局变量以及单页面的title设置总结,非常具有实用价值,需要的朋友可以参考下2017-06-06


最新评论