ios 下 fixed input 框,滚动不固定问题

document.querySelector('body').addEventListener('touchmove', () => {
      // if (e.target.className !== 'input') {
      if (this.source === 'IOS') {
        document.querySelector('.tel-input').blur();
      }
      // }
    });
    
    let v = 0;

    document.body.addEventListener('focusin', () => {
      // 软键盘弹出的事件处理
      const scrollTop = document.body.scrollTop || document.documentElement.scrollTop;
      // 注只针对ios 、处在滚动中位置时
      if (this.source === 'IOS' && scrollTop > 0) {
        document.body.scrollTop = document.body.scrollHeight;
        v = window.pageYOffset;
        this.setState({ className: 'absoluteBtn' });
      }
    });

    document.body.addEventListener('focusout', () => {
      // 软键盘收起的事件处理
      // isIphone() && this.setState({ className: '' })
      if (this.source === 'IOS') {
        // document.body.scrollTop = 0;
        document.documentElement.scrollTop = 0;
        this.setState({ className: 'fixBtn' });
      }
    });

你可能感兴趣的:(ios 下 fixed input 框,滚动不固定问题)