移动端 webview 的 input/textarea 输入框在输入时被软键盘覆盖的问题

解决

主要是安卓端的 webview 的问题,微信端也可以解决

main.js 中添加下面代码

// 修复输入框输入时被键盘覆盖的问题
window.addEventListener("resize", function() {
  if (
    document.activeElement.tagName == "INPUT" ||
    document.activeElement.tagName == "TEXTAREA"
  ) {
    window.setTimeout(function() {
      document.activeElement.scrollIntoViewIfNeeded();
    }, 0);
  }
});

如果安卓端的 webview 还是有这个问题,就要考虑是不是安卓设置了 webview 全屏模式

全屏模式下的 webview 会忽略 SOFT_INPUT_ADJUST_RESIZE,不会自动调整,这需要安卓端设置一下,去掉全屏模式

posted @ 2022-01-25 10:44  to人间值得  阅读(338)  评论(0编辑  收藏  举报