现象:第一次出现微信底部默认导航的时候布局会错乱(在项目中底部弹窗显示不完整),在出现错乱的页面刷新又能恢复正常。
问题产生原因:新增导航栏使网页脱离文档流的屏幕高度变小,有些布局没有重新计算(更加具体的原因就没有管了,项目已经是一个成熟的项目,用的框架也不是新框架,会存在样式穿透的问题,很多东西还是少动为妙)。
问题分析和解决:底部导航栏是因为出现history记录才出现的,再加上我所作的项目刷新一下页面就能恢复正常。优先考虑在出现history后重新加载页面,监听屏幕高度变化(安卓机不会新增导航),再利用session 做一个节流,避免多次触发
$(window).resize(function () {
if(sessionStorage.getItem('changeScreen') != 1){
// alert('高度变化')
sessionStorage.setItem('changeScreen',1)
window.location.reload()
}
})