在iframe中单击时,iframe ionic3应用程序崩溃

时间:2018-12-06 09:50:12

标签: javascript angular typescript iframe ionic3

嘿,我在iframe中使用翻转书的网址:

<ng-container>
        <iframe 
                [src]="eUrl"
                id="flipping_book_iframe"
                frameborder="0"
                allowfullscreen="allowfullscreen"></iframe>
</ng-container>

因此,当我单击iframe内的下载按钮(来自翻转书的网址)时,应用会在几秒钟后崩溃。 但是下一张和上一张幻灯片都有效

离子:

  

ionic(Ionic CLI):4.0.2

     

离子框架:离子角

     

3.9.2 @ ionic / app-scripts:3.2.0

科尔多瓦:

  

cordova(Cordova CLI):8.1.2(cordova-lib@8.1.1)

     

Cordova平台:不可用

系统:

  

Android SDK工具:25.2.5

     

NodeJS:v8.9.3

     

npm:5.4.2

     

OS:Windows 10

     

我在iframe中找到了它:但似乎无法在移动设备上运行:   出版物.pdf   在网站上正常运行。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案: 将html iframe编辑为:

<ng-container>
    <iframe 
            [src]="eUrl"
            id="flipping_book_iframe"
            #flippingBook
            (load)="onLoadFlippingBook()"
            frameborder="0"
            allowfullscreen="allowfullscreen"></iframe>
</ng-container>

.ts文件:

 @ViewChild('flippingBook') flippingBookIframe: ElementRef;

onLoadFlippingBook(){
    if(this.flippingBookIframe){
      let iframe = jQuery('#flipping_book_iframe');
      let allAs = iframe.contents().find('a[target=_blank]');
      allAs.on("click",function(e){
        e.preventDefault();
        let url = this.href;
        window.open(url,"_system");
      });
    }

至少当您单击下载按钮时,pdf会打开