vue:移动端判断键盘事件,兼容安卓ios

    if (!this.$isIos) { // 安卓端
      const innerHeight = window.innerHeight;
      window.addEventListener('resize', () => {
        const newInnerHeight = window.innerHeight;
        if (innerHeight > newInnerHeight + 100) { // 加100是因为实际开发中发现安卓键盘收起后,newInnerHeight依旧小于innerHeight,但是这个值不大,在50以内,键盘的高度肯定是会大于100的,保险起见所以加了100
          // 键盘弹出事件
          this.$store.commit('setKeyboard', true);
        } else {
          // 键盘收起事件
          this.$store.commit('setKeyboard', false);
        }
      });
    } else { // ios端
      window.addEventListener('focusin', () => {
        // 键盘弹出事件处理
        this.$store.commit('setKeyboard', true);
      });
      window.addEventListener('focusout', () => {
        // 键盘收起事件
        this.$store.commit('setKeyboard', false);
        
      });
    }

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页