应用侧使用web组件嵌入了一个网页,网页内由包含了一个iframe的h5页面。iframe的h5有跳转,web组件可以通过onLoadIntercept拦截到,没有问题。但是使用runJavaScript通信时,只有web组件嵌入的页面能通信到,iframe要如何处理,也能同步通信呢?
应用侧使用web组件嵌入了一个网页,网页内由包含了一个iframe的h5页面。iframe的h5有跳转,web组件可以通过onLoadIntercept拦截到,没有问题。但是使用runJavaScript通信时,只有web组件嵌入的页面能通信到,iframe要如何处理,也能同步通信呢?
1 回答866 阅读✓ 已解决
1 回答1.2k 阅读
1 回答991 阅读
1 回答943 阅读
1 回答903 阅读
1 回答825 阅读
1 回答777 阅读
不支持iframe直接和应用侧通信,参考以下方案:
1、如果是同源域名,主页面获取到以后存入window对象,添加到window对象属性里去,传递给iframe。
2、如果是同源域名,主页面获取到以后存入localStorge,iframe去获取。
3、不同源域名,前端页面接收HarmonyOS端发送的消息,并通过window.postMessage方法将消息传递给iframe中的页面。在iframe中的页面接收到消息后,通过window.parent.postMessage方法将消息传递给宿主页面。