关于iphone手机浏览器填写表单时,position:absolute页面被顶上去下不来的问题

关于iphone手机浏览器填写表单时,position:absolute页面被顶上去下不来的问题:

点击表单的时候,页面被虚拟键盘顶上去了,当收起虚拟键盘的时候,页面下不来了。
安卓手机上测试没有问题。

谢谢

阅读 3.9k
3 个回答
const u = navigator.userAgent
const isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/) //ios终端
window.onload = function() {
  const inputs = document.getElementsByTagName('input')

  for (let i = 0; i < inputs.length; i++) {
    inputs[i].addEventListener('blur', function() {
      if (isIOS) {
        blurAdjust()
      }
    })
  }
}
// 解决苹果不回弹页面
function blurAdjust(e) {
  if (document.activeElement.tagName === 'INPUT' || document.activeElement.tagName === 'TEXTAREA') {
    return
  }
  if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
    //判断iPhone|iPad|iPod|iOS
    document.activeElement.scrollIntoViewIfNeeded(true)
  }
}

absolute写的是top:xxx还是bottom:xxx

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题