我在下面输入了地图:输入地图
问题是当我将输入的焦点放在手机上时,键盘弹出,并且输入看不见。我尝试滚动页面以弹出键盘后查看输入的位置,但是在Android上的Chrome中,$(window).scrollTop(value)不起作用。我这样使用它:
$shopListSearch.on('focus', function() {
let
$this = $(this),
thisHeight = $this.innerHeight(),
value = thisOffsetTop - thisHeight - $header.innerHeight();
//timeout to wait while keyboard pops up
setTimeout(function() {
$window.scrollTop(value);
}, 2000);
});
此功能可在移动设备的Chrome模拟器中使用,但不能在真正的Android手机上使用。我该怎么做才能使其在手机上工作?
问题是页面顶部脚本计算的高度块。因此,当kb在Android上弹出时,视图框大小会更改,顶部块高度也会更改。结果是,当滚动位置相同时,输入y-pos减小。解决方案很简单-在计算顶部块的高度时检查输入是否在焦点上。