javascript - ios中input获取焦点定位问题
本文介绍了javascript - ios中input获取焦点定位问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
解决方案
应该算是移动端比较经典的兼容性bug了,如果没猜错的话,你的输入框应该是使用的fixed
定位。
出现原因:
软键盘唤起后,页面的fixed
元素将失效(即无法浮动,也可以理解为变成了absolute
定位),所以当页面超过一屏且滚动时,失效的fixed
元素就会跟随滚动了。这便是iOS上fixed
元素和输入框的bug。其中不仅限于type=text
的输入框,凡是软键盘(比如时间日期选择、select选择等等)被唤起,都会遇到同样地问题。
解决思路&方案:
1.既然在iOS下由于软键盘唤出后,页面fixed元素会失效,导致跟随页面一起滚动,那么假如——页面不会过长出现滚动,那么即便fixed
元素失效,也无法跟随页面滚动,也就不会出现上面的问题了。
2.不嫌重的话可以使用iScroll.js
这儿有一篇比较详细的解决方案Web移动端Fixed布局的解决方案
这篇关于javascript - ios中input获取焦点定位问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文