HTML5在微信小程序中,在微信小程序和APP中嵌入H5时,如何交互?

在微信小程序和APP中使用H5时,如何做事件交互?

微信小程序使用web view嵌入H5,使用方式见微信文档

使用中要注意的:

1. 标签嵌入式全屏的,基本上就不能再在页面上加其他的功能了

2. 文档中提到的bindmessage属性,很鸡肋😓:文档上说会在特定时机(小程序后退、组件销毁、分享)触发并收到消息。 实际业务上的交互只能靠wx.miniProgram.navigateTo带着交互参数跳转某个页面实现

H5端代码

// 引入微信jssdk

// 交互方法,例如点击了按钮

// 判断当前处于什么环境,根据不同环境做对应的处理

if(window.__wxjs_environment === 'miniprogram'){

// 当前是微信小程序环境

wx.miniProgram.navigateTo({url: '/XXX/XXXX?id=1'})

} else if (isAndroidApp()){

// 其中"app"是客户端注入的实例,可自定义;“myMethod”是用来交互的方法,不同事件可,自定义。

app.myMethod({id: 1})

} else if (isiOSApp()){

// “myMethod”是用来交互的方法,不同事件,可自定义。其中参数如果为空时,还是要传个null

window.webkit.messageHandlers.myMethod.postMessage({id: 1});

}

判断当前是否是Android客户端打开

function isAndroidApp() {

var ue = navigator.userAgent

// XXX是和APP的协议名称

return (ue.match(/XXXX\/Android/i) == "XXXX/Android") ? true : false

}

判断当前是否是Android客户端打开

function isiOSApp() {

var ue = navigator.userAgent

// XXX是和APP的协议名称

return (ue.match(/XXXX\/iOS/i) == "XXXX/iOS") ? true : false

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值