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

前提:

关于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%');
                    }
                });


如有问题,欢迎留言!







评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值