我看了你的问题,如果固定定位的元素,在元素内 input 框聚焦的时候,弹出的软键盘占位。
失去焦点的时候软键盘消失,但是还是占位的,导致input框不能再次输入,在失去焦点的时候给一个事件。
解决代码如下:
投·被保险人姓名
changeBlur(){
let u = navigator.userAgent, app = navigator.appVersion;
let isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
if(isIOS){
setTimeout(() => {
const scrollHeight = document.documentElement.scrollTop || document.body.scrollTop || 0
window.scrollTo(0, Math.max(scrollHeight - 1, 0))
}, 200)
}
}
拓展:position: fixed 的元素在 iOS 里,收起键盘的时候会被顶上去,特别是第三方键盘。