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="*" />