iphone微信6.7.4版本出现的问题,用户输入时,软键盘弹出。收起软键盘的时候,页面下部软键盘原来位置会变成一片空白区域,页面没有恢复原状。
var n = document.querySelectorAll('input,textarea');
Array.prototype.forEach.call(n, function(dom) {
var pageDom = 5;
dom.onblur = function() {
document.body.scrollTop = ++pageDom;
};
});
实现原理:出现上述情况,手动下拉页面,页面会恢复正常。所以,在input的blur事件中监听软键盘收起,js模拟手动下拉。前提,body本身没有滚动。
滚动距离要动态的,多个input时相同scrollTop会失败,相当于没有滚动.