当目标为“ _system”时,如何在inAppBrowser中隐藏地址栏?

时间:2019-04-26 11:35:53

标签: cordova cordova-plugins inappbrowser

我正在使用Cordova inAppbrowser插件打开外部URL,它包含单击按钮时可下载的PDF文件选项。

我正在使用下面的源代码隐藏地址栏。

cordova.InAppBrowser.open('https://www.sample-videos.com/download-sample-pdf.php', '_system', 'location=no,hideurlbar=yes,hidenavigationbuttons=yes');

上面的代码正在发生这种情况:

当我通过_system作为第二个参数时,当我单击外部链接中的下载按钮时,打开了“自定义”链接并下载了PDF文件。但是inAppBrowser的地址栏仍然显示。 在这里,如何隐藏地址栏?。

当我通过_blank作为第二个参数时,当我单击外部链接中的下载按钮时,“自定义”链接被打开,而PDF文件未下载。但是地址栏是隐藏的。在这里,为什么不下载PDF文件?

现在,如何隐藏地址栏和PDF文件也应该下载? 我正在关注以下链接。

https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-inappbrowser/index.html

1 个答案:

答案 0 :(得分:0)

仅当您使用_blank时InAppBrowser选项才起作用。使用_system时,您将打开Safari,无法控制其行为。

您正在使用的示例在InAppBrowser不支持的链接上具有一个download参数,因此您应该获取直接pdf链接,并使用该URL显示pdf文件或将网站重定向到文件,而不使用download属性。

可能会有些混乱,但是文档说:

  

_blank:在InAppBrowser中打开。

     

_system:在系统的Web浏览器中打开。

     

选项:InAppBrowser

的选项

因此,尽管整个插件都称为InAppBrowser,但使用InAppBrowser时您只会得到_blank,并且选项仅适用于InAppBrowser窗口。

P.S,我记录了它以使它变得更清晰一些,所以如果仍然不清楚,请让我知道我们可以如何改进它。