判断h5是否在小程序webview

大道V至简 2024-09-18 10:33:01 阅读 67

1、在网页内可通过<code>window.__wxjs_environment变量判断是否在小程序环境,建议在WeixinJSBridgeReady回调中使用。

// web-view下的页面内

function ready() {

console.log(window.__wxjs_environment === 'miniprogram') // true

}

// 非小程序内

if (!window.WeixinJSBridge || !WeixinJSBridge.invoke) {

document.addEventListener('WeixinJSBridgeReady', ready, false)

} else {

// 在小程序内

ready()

}

2、从微信7.0.0开始,可以通过判断userAgent中包含miniProgram字样来判断小程序web-view环境。

wx.miniProgram.getEnv(function(res) {

console.log(res.miniprogram) // true

})

3、从微信7.0.3开始,webview内可以通过判断下面的方式判断小程序是否在前台

WeixinJSBridge.on('onPageStateChange', function(res) {

console.log('res is active', res.active)

})

官方文档地址:web-view | 微信开放文档



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。