javascript - 移动端页面 手机键盘挡住了输入框
迷茫
迷茫 2017-06-22 11:53:59
[HTML讨论组]

正常情况

问题

每次当手机切换app或窗口时,再回到该页面时 第一次 点击输入框,键盘就会把输入框挡住,只有第一次点击会挡住。
这是什么原因导致的?
然后我发现此时页面的滚动条是没有滚动到最底部, 所以我给输入框聚焦时绑定了个事件
$('.input').on('focus', function() {

$(window).scrollTop(99999);

});
但是页面的滚动条还是没有滚到最底部,输入框还是给键盘挡住了。

$(document) 
$('body, html') 也试过了.
     
迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(4)
仅有的幸福

安卓浏览器在软键盘弹出后不会像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%');  
              }  
          });  
巴扎黑

你这是底部输入框样式的问题吧,试试这个上面的方法。
/a/11...

怪我咯

二楼正解,其实就是浏览器兼容性问题

世界只因有你

好像没有啥好办法

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号