我看到这个问题是here,here和here问到的,但是找不到明确和/或可行的答案。不能说所有的Android手机,以我为例,它是运行Chrome 68.0,Firefox Focus 6.1和Samsung Internet 7.4的Samsung J3(2016)上的Android 5.1.1。
会发生什么。 当我加载需要键盘输入的HTML表单并尝试输入时,键盘会强制该表单(位于Fancybox iframe中)在Chrome和Firefox Focus中进行调整。调整大小可以将表单减小到屏幕高度的50%,还可以调整表单宽度和输入字段的宽度/高度。在关闭键盘并返回到正常大小之前,看不到任何键入的文本。 Fancybox问题?也许可以,但调整大小不会在三星Internet中发生-在该浏览器中,键盘会覆盖页面,即向上滑动并滑过表单的下半部分,使表单保持100%的大小。在早期版本的Firefox Focus中也没有发生。
在这里查看答案,我发现的only promising suggestion是:
$(window).bind( 'orientationchange', function(e){ // Type pretty code here });
仅仅是测试一下,有人可以建议“漂亮代码”是什么吗?
更新-鉴于Sirence,欢迎提出任何解决方案。还找到了这个https://www.chromestatus.com/feature/5656077370654720,它在链接的文档中看起来像(不确定)解决此问题的建议。
答案 0 :(得分:0)
这是一个很奇怪的问题,其中软键盘更改了视口的高度...当前正在处理同一问题...这看起来很有希望,即将实现...它将视口的内容设置为显式px值
setTimeout(function () {
var viewheight = $(window).height();
var viewwidth = $(window).width();
var viewport = $("meta[name=viewport]");
viewport.attr("content", "height=" + viewheight + "px, width=" +
viewwidth + "px, initial-scale=1.0");
}, 300);
编辑:像魅力一样工作
答案 1 :(得分:0)
单独固定高度应该可以。下面的代码不使用jQuery。
dependencies {
classpath 'com.android.tools.build:gradle:4.1.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "com.google.gms:google-services:4.3.4"
classpath("androidx.navigation:navigation-safe-args-gradle-plugin:$nav_version")
}
我需要降低高度以适合我的情况。