現象:簡單的說就是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布局,也是醉了。
