js 解决安卓端软键盘遮挡文本框的方法
在工作中需要写h5页面供给安卓和ios开发使用,所以会遇到各种不兼容的问题
点击文本框输入东西时,ios端文本框会正常弹出到软键盘之后,但是安卓端的文本框就会还在原处,软键盘弹出后就会遮挡文本框
有在网上查询解决方法,但是客户端用我的页面的时候方法没有生效,所以最后就手动弹起文本框来解决
解决方法没有影响ios端的正常效果
PO上代码:
$("#inputValue").on("focus",function(){
var u = navigator.userAgent, app = navigator.appVersion;
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1;
var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
if (isAndroid) { //是安卓则手动弹起
var winHeight = $(window).height();
$("#inputBorder").animate({"bottom":(winHeight/2 - 30)+"px"},300);
//$("#inputBorder")为要弹起的元素
}
if (isIOS) { //ios保持原状
$("#inputBorder").css("bottom","0");
}
});