gpt4 book ai didi

cordova - 在 inappbrowser 中打开 _blank 链接

转载 作者:行者123 更新时间:2023-12-02 02:07:41 24 4
gpt4 key购买 nike

我们的 cordova 应用程序中有“外部” anchor 链接,我们使用 inappbrowser plugin_blank 目标打开该链接。 ,它会在 native 应用程序“上方”打开一个 inappbrowser 实例。这些通常是我们基于网络的支持网站的链接。

现在,当用户在 inappbrowser 中访问我们的支持网站时,我们会提供指向使用标准 target="_blank" 的第三方网站的链接。但是,用户不会看到 inappbrowser 的新实例打开,也不会看到打开的 system 浏览器实例,而是单独的 inappbrowser 实例将他们从支持站点带到第三方站点。

有什么方法可以让 target="_blank" 的 inappbrowser 行为按预期工作吗?

最佳答案

由于 InAppBrowser 的设计,它只能有一个实例,因此您唯一的选择就是在系统浏览器上打开外部链接。您可以监听 loadstart 事件,如果 url 不包含您的域,则在系统浏览器上打开它,如下所示:

var browserRef = window.cordova.InAppBrowser.open('http://www.yourdomain.com/support', '_blank');

browserRef.addEventListener('loadstart', function(event) {
if((event.url).indexOf('www.yourdomain.com') === -1) {
window.cordova.InAppBrowser.open(event.url, '_system');
}
});

但我认为这不会避免在 inAppBrowser 窗口上加载外部站点,因此您还必须注入(inject) javascript 以返回到 inAppBrowser 上的上一页

browserRef.addEventListener('loadstop', function(event) {
browserRef.executeScript({ code: 'window.history.back();' }, null);
});

关于cordova - 在 inappbrowser 中打开 _blank 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40267276/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com