H5解决安卓软键盘弹出遮蔽的方法

首先先判断是否为安卓,是的话才添加事件监听,获取焦点元素判断是否为input或者textarea类型,是的话,Element.scrollIntoView() 方法会让当前的元素滚动到浏览器窗口的可视区域内 

  created () {
    var u = navigator.userAgent
    if (u.indexOf('Android') > -1 || u.indexOf('Adr') > -1) {
      this.onFoucs()
    }
  },
  methods: {
    onFoucs () {
      window.addEventListener('resize', function () {
        alert('android')
        if (document.activeElement.tagName === 'INPUT' || document.activeElement.tagName === 'TEXTAREA') {
          alert(document.activeElement.tagName)
          // alert('2332323')
          window.setTimeout(function () {
            alert('scroll')
            document.activeElement.scrollIntoView()
          }, 1)
        }
      })
    }
  },
posted @ 2020-01-16 11:08  KIU的博客  阅读(711)  评论(0编辑  收藏  举报