移动端解决input获取焦点软键盘弹出影响定位的问题

在最近的一次H5页面开发中,发现在安卓端点击输入框的时候虚拟键盘会把最下边的‘保存’按钮顶上去..

Posted by KUNG on March 22, 2017

这是刚做前端时候写的文章,拿到简书上做记录吧!以免以后再遇到这样的坑。

在最近的一次H5页面开发中,发现在安卓端点击输入框的时候虚拟键盘会把最下边的‘保存’按钮顶上去。

在试了很多方法后找到了解决方案:

代码如下:

$('#phone').bind('focus',function(){
	$('.bottom_fix').css('position','static');
	//或者$('#viewport').height($(window).height()+'px');
}).bind('blur',function(){
	    $('.bottom_fix').css({'position':'fixed','bottom':'0'});
	  //或者$('#viewport').height('auto');
});

其原理其实是聚焦input框时改变ibottom_fix的布局使其不顶到页面顶端,失去焦点时让bottom_fix回到fixed布局。 注:#phone为input录入框,bottom_fix为固定按钮。

以下为参考资料: