// 聚焦时触发
const focusInputView = () => {
const pageHeight = window.innerHeight;
let inputDom = inputCon.value?.getBoundingClientRect();// 当前的inputdom
let height = inputDom?.height || 0;
let top = inputDom?.top || 0;
const topHeight = top + height; //安卓端需要滚动的距离
setTimeout(() => {
// 加延迟键盘未弹起,页面就开始滚动了导致输入框还是被遮挡
if (pageHeight / 2 <= top) { // 判断 如果当前的input框在半个屏幕下面位置 才需要进行向上移动,否则不需要
if (isIOS) {
//如果是ios 需要进行页面滚动
itemCon.value &&
itemCon.value.scrollTo({
top: topHeight
});
window.scrollTo(0, top);
} else {
inputCon.value?.scrollIntoView(false); // 如果在安卓端 不支持 该函数,可以走下面的方法
//window.scrollTo(0, topHeight); 在安卓端有时候 window失效 可以使用 下面的方式
//document.body.scrollTo(0, topHeight);
}
}
}, 450);
};