解决absolute fixed元素在安卓唤起虚拟键盘时,元素被挤上来。

Posted 雾戤

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决absolute fixed元素在安卓唤起虚拟键盘时,元素被挤上来。相关的知识,希望对你有一定的参考价值。

//由于安卓虚拟键盘也会占位置,致使页面高度变小,所以absolute fixed元素跟着移动
//防止唤起键盘,导致absolute元素被挤上来
var isandroid = navigator.userAgent.indexOf(‘Android‘) > -1 || navigator.userAgent.indexOf(‘Adr‘) > -1;
if (isAndroid){//如果是安卓手机的浏览器
    var win_h = $(window).height();//关键代码
    $("body").height(win_h);//关键代码
    window.addEventListener(‘resize‘, function () {
        // Document 对象的activeElement 属性返回文档中当前获得焦点的元素。
        if (document.activeElement.tagName === ‘INPUT‘ || document.activeElement.tagName === ‘TEXTAREA‘) {
          if($(‘.footerText‘).is(‘:visible‘)){
            $(‘.footerText‘).hide();
          }else{
            $(‘.footerText‘).show();
          }
        }
    });
}

以上是关于解决absolute fixed元素在安卓唤起虚拟键盘时,元素被挤上来。的主要内容,如果未能解决你的问题,请参考以下文章

iOS下的 Fixed + Input(时间日期选择select 选择等等) 出现的问题

Web移动端Fixed布局的解决方案

Web移动端Fixed布局的解决方案

iOS 安卓 键盘问题

iOS 安卓 键盘问题

[转] Web移动端Fixed布局的解决方案