目前有个新需求
小程序里面需要嵌套webview,都知道webview有个致命的点就是会自动撑满小程序满屏,此时唯一的解决方案就是去嵌套的webview页面进行修改,修改html页面(比如底部操作按钮、下一步等等)。我是这么来进行通讯的:
html:
引入src
src=“https://res.wx.qq.com/open/js/jweixin-1.3.2.js”
src=‘//webapi.amap.com/maps?v=2.0&key=a1528aebd3dfed88e412368478f0f37f&plugin=AMap.ToolBar’
下面是操作按钮:
var timer = null; //防抖
$('.down').click(function() {
clearTimeout(timer);
timer = setTimeout(function() {
wx.miniProgram.navigateTo({
url:'/pages/projectInfo/projectInfo?viewType='+'viewType' //跳转的小程序地址以及携带的参数,可以在小程序onload里面获取
});
}, 2000)
})
webview弊端
webview加载偶现白屏问题,现在网上没有找到具体的解决方案,所以稍作总结,避免一些不必要的可能性:
1.避免在链接中带有中文字符,在 iOS 中会有打开白屏的问题,建议加一下 encodeURIComponent
2.在 iOS 中,若存在JSSDK接口调用无响应的情况,可在 web-view 的 src 后面加个#wechat_redirect解决
3.在webview的链接后面都加上时间戳,避免缓存问题导致的白屏
4.在webview组件上添加wx:if控制,只有在webview的src赋值的时候再将webview显示出来,避免页面加载慢导致页面高度计算为0,导致的白屏
5.TLS 必须支持 1.2 及以上版本。部分旧 Android 机型还未支持 TLS 1.2,请确保 HTTPS 服务器的 TLS 版本支持 1.2 及以下版本