最近做的一个微站,在微信中打开时,用zepto取高度会随机地出现错误。判断是ready事件有问题,用下面的代码可以解决:
if(WeixinApi.openInWeixin()){ if (typeof WeixinJSBridge == "undefined") { if (document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', init, false); } else if (document.attachEvent) { document.attachEvent('WeixinJSBridgeReady', init); document.attachEvent('onWeixinJSBridgeReady', init); } } else { init(); } }else{ $(function(){ init(); }); }
如果是在微信内置浏览器里打开,就等WeixinJSBridge初始化好了再执行init;如果是在普通浏览器打开,就用zepto的ready事件
WeixinApi的地址是:WeixinApi