ionic3 页面嵌入iframe浏览第三方页面返回操作


1.import { DomSanitizer } from "@angular/platform-browser";   //目标页面引入

2.private sanitizer: DomSanitizer  //构造函数里

3.<iframe id='docframe' name="admin" [src]="url|safe" width="100%" height="100%" frameborder="0" align="center"></iframe>  //page

4.首先在iframe框架中在要触发事件的地方加上:
var data = {
  name: '名字',
  type: '类型'
}//定义要发送到ionic的数据对象
window.parent.postMessage(data, '*');//创建向ionic代码中发送的事件(详细请直接百度该事件用法)
然后在ionic代码中接收的时候:
window.addEventListener('message', function(event) {//接收iframe中发送过来的数据(详细用法请直接百度)
  console.log(event.data);//这个接收到的data就是在iframe中发送过来那个data    

  if(event.data) {
    this.iUrl = event.data.name;
  }
 
}

5.goBack() {   //返回事件
if(this.url == this.iUrl) {
this.navCtrl.pop();
}else {
window.history.back();
}
}

 

6.iframe在ios不显示的解决方法

在项目根目录下找到config.xml文件,找到<access origin="*" />,在他后面加入<allow-navigation href="*" />


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM