目前在apple手机上面没发现问题,还是我大apple牛鼻啊!
Android手机却不行,也不是说Android手机完全有问题,之后键盘出来之后,页面向上滑动的距离太短,用户体验性不太好。
目前我的解决方案:
(1) 输入框获取交焦点之后,使用定时器循环判断浏览器可视窗口的大小,然后设置整个页面的滚动距离。
(2)给浏览器添加resize事件,然后判断输入框时候获取当前页面的焦点,
目前我是使用第一种方法来处理的!代码如下:
$('input').on('focus', function() {
var h = this.offsetHeight,
t = this.offsetTop;
var timer = setInterval(function() {
var hs2 = document.documentElement.clientHeight || document.body.clientHeight;
var tH = window.scrollY;
if (isAndroid && hScreen>hs2) {
//使用原生
// document.body.scrollTop = hScreen - hs2;
// document.documentElement.scrollTop = hScreen - hs2;
// 使用zepto.js库
$(document).scrollTop(hScreen - hs2);
clearInterval(timer);
}
}, 100)
})