手机浏览器浏览WebApp弹出的键盘遮盖住文本框的解决办法

Posted 夏天的冰淇淋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了手机浏览器浏览WebApp弹出的键盘遮盖住文本框的解决办法相关的知识,希望对你有一定的参考价值。

手机浏览器浏览WebApp弹出的键盘遮盖住文本框的解决办法

最近碰到android微信内置浏览H5页面,因为其中的文本输入框(input)放置在靠近页面的中下方,点击文本框以后,则输入框会被弹出的手机输入法键盘遮盖住。

找到一段js代码直接解决之,点击时强制滚动之,好像也解决了在Android浏览器下浏览的同样问题。

 

复制代码
1 if(/Android [4-6]/.test(navigator.appVersion)) {
2     window.addEventListener("resize", function() {
3         if(document.activeElement.tagName=="INPUT" || document.activeElement.tagName=="TEXTAREA") {
4             window.setTimeout(function() {
5                 document.activeElement.scrollIntoViewIfNeeded();
6             },0);
7         }
8     })
9 }
复制代码

 

补充一段代码:对于某些页面,由于页面设计底部可能有工具栏(比如某些页面固定了一个footer在底部),这时候虽然系统计算出来不需要滚动,但弹出输入法时,底部的工具栏却移动上去正好遮盖住输入框(常见于输入框正好在页面中部的情况)。
这时候可以通过判断屏幕高度变化来隐藏该底部工具栏。

    <script type="text/javascript">
        document.write( \'<style>#footer{visibility:hidden}@media(min-height:\' + ($( window ).height() - 10) + \'px){#footer{visibility:visible}}</style>\' );
    </script>

以上是关于手机浏览器浏览WebApp弹出的键盘遮盖住文本框的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

微信内置浏览器浏览H5页面弹出的键盘遮盖文本框的解决办法

safari浏览器fixed后,被软键盘遮盖的问题—未解决

safari浏览器fixed后,被软键盘遮盖的问题—未解决

H5输入框在输入信息的时候 页面会变形 并且在页面不变形的时候 键盘会遮挡 输入框的解决办法

防止在 Android 浏览器中从键盘调整页面大小

手机浏览器访问页面时,点击输入框如何自动切换到数字键盘,请大侠们指教