js-移动端android浏览器中input框被软键盘遮住的问题解决方案

  1. 前提:

    关于input框被浏览器软键盘遮挡住的问题,主要是安卓浏览器,下面出一个解决方案:

    解决方案原理:

    安卓浏览器在软键盘弹出后不会像ios浏览器那样重新计算window的高度,所以导致安卓浏览器window的高度在软键盘弹出的时候为“软键盘的高度+(window的高度-软键盘的高度)”;而其实,此时,合理的高度应该是页面的高度+软键盘弹出的高度;就此解决方案为如下:var winHeight = $(window).height(); //获取当前页面高度  

  2.           $(window).resize(function() {  
  3.               var thisHeight = $(this).height();  
  4.               if (winHeight - thisHeight > 50) {  
  5.                   //当软键盘弹出,在这里面操作  
  6.                   //alert('aaa');  
  7.                   $('body').css('height', winHeight + 'px');  
  8.               } else {  
  9.                   //alert('bbb');  
  10.                   //当软键盘收起,在此处操作  
  11.                   $('body').css('height', '100%');  
  12.               }  
  13.           }); 
原文地址:https://www.cnblogs.com/xzzzys/p/7526873.html