移动端webapp,在进入某页面后,input框自动获取焦点并弹出数字键盘
2017-03-08 18:52
941 查看
在做项目的过程中,需求文档有个要求是,当进入页面后,第一个行input框要自动获取焦点,并弹出数字软键盘。
个人认为这个问题,大家做移动端的时候应该会遇到,今天拿出来说说我们遇到的这个小bug。一个相对很简单的需求,但是值得记录一下,因为在此我们还是遇到了一些hack的。
先说一下上面的这个问题的基础解决方案:
autofocus 属性 : 文本输入字段被设置为当页面加载时获得焦点<input type="tel" autofocus="autofocus"> 这一行代码其实就够了!
但是问题来了、、
问题点:
android系统下
QQ、uc浏览器,input输入框中需要页面进入即自动弹出数字软键盘,利用input标签属性autofocus=”autofocus”,经真机测试,依然无法弹出软键盘。解决方案:
1、利用要获得焦点的input框添加一个focus(),此方法在chrome浏览器下无任何问题,但是在QQ、uc浏览器下虽然获取了焦点,但是无法弹出数字软键盘。2、利用setTimeOut()开一个定时器的方法,但是,android手机参差不齐,性能问题严重,不可控以及容错率太低,所以此方法比较不靠谱,不建议使用。
3、利用trigge()方法,对要获得焦点的input框,调用一次”click”事件,既可解决上述问题。
xxxxxxxx.el.find('#c_payment_cardbin_input').trigger("click").focus();
以上就是我们此次项目的解决方案,网上查了一些,但是也没找到更好的方法,个人感觉还是自己写的这个比较靠谱一些,不过上述方法能实现我们的项目需求,而且也能很好的解决万恶的Android机兼容性问题。相关文章推荐
- 防止刚进入activity的时候,edittext获取焦点,自动弹出软键盘
- android开发中防止刚进入activity时edittext获取焦点,自动弹出软键盘
- 实现input移动端自动获取焦点以及数字键盘搜索功能
- 止刚进入activity的时候,edittext获取焦点,自动弹出软键盘
- 安卓使用EditText进入一个新页面时自动获取焦点弹出输入法界面解决办法
- android开发中防止刚进入activity时edittext获取焦点,防止自动弹出软键盘
- android开发中防止刚进入activity时edittext获取焦点,防止自动自动弹出软键盘
- [置顶] android开发中防止刚进入activity时edittext获取焦点,防止自动自动弹出软键盘
- 微信进入消息页面,光标处自动弹出软键盘设置
- Android 如何让EditText不自动获取焦点 在项目中,一进入一个页面, EditText默认就会自动获取焦点。 那么如何取消这个默认行为呢? 在网上找了好久,有点 监听软键盘事件
- 关于程序进入包含EditText控件的界面会自动获取焦点并弹出软键盘影响用户体验的问题
- Android避免进入页面EditText自动弹出软键盘
- Android PopupWindow中EditText获取焦点自动弹出软键盘
- Android进入页面开始就自动弹出软键盘
- web网页input框设置,点击input框弹出键盘,再收回键盘,焦点框会随页面滚动
- popupwindow中EditText获取焦点后自动弹出软键盘
- 进入Activity的时候EditText获取焦点自动弹出输入法的解决办法
- 控制EditText自动获取焦点弹出软键盘
- 进入页面EditText取消焦点防止自动弹出输入框
- android开发中防止刚进入activity时edittext获取焦点,自动弹出软键盘