现象:简单的说就是iPhoneX页面里有输入框时,点击输入框,无论是否输入内容,点击输入框的完成或者页面其他地方隐藏输入框后,发现页面被整体顶上去了,而输入框的部分要么成黑色要么白色等,页面底部变成了输入框的顶部位置
解决办法:
方法1:
这个问题是ios12的bug,包括在其他app的webview里,只要ios12平台,app由xcode10构建,就会出现,不限于苹果x和xs,解决代码
$('input').on('blur', this, (ev) => {
windows.scrollTo(0,0)
});
但是对我的页面没有效果。。。于是找到方法2
方法2:
$('input').on('blur', function() {
var count = 0;
var screenHeight = window.screen.height;
var blurInterval = setInterval(function () {
$('body').css('min-height', (screenHeight-=10)+'px');
if (count >= 10) {
clearInterval(blurInterval);
$('body').css('min-height', '');
}
count++;
}, 10)
})
完美解决! 这次做活动好几个iPhone bug,iphone 10.3.3版本竟然不兼容flex布局,也是醉了。 |