前提:
关于input框被浏览器软键盘遮挡住的问题,主要是安卓浏览器,下面出一个解决方案:
解决方案原理:
安卓浏览器在软键盘弹出后不会像ios浏览器那样重新计算window的高度,所以导致安卓浏览器window的高度在软键盘弹出的时候为“软键盘的高度+(window的高度-软键盘的高度)”;而其实,此时,合理的高度应该是页面的高度+软键盘弹出的高度;就此解决方案为如下:
-
var winHeight = $(window).height(); //获取当前页面高度 -
$(window).resize(function() { -
var thisHeight = $(this).height(); -
if (winHeight - thisHeight > 50) { -
//当软键盘弹出,在这里面操作 -
//alert('aaa'); -
$('body').css('height', winHeight + 'px'); -
} else { -
//alert('bbb'); -
//当软键盘收起,在此处操作 -
$('body').css('height', '100%'); -
} -
});
如有问题,欢迎留言!
https://blog.csdn.net/hzaini89/article/details/72864344