cordova phonegap:处理inappbrowser内的链接(需要外部链接打开新浏览器或在系统浏览器中打开)

时间:2014-08-30 01:36:28

标签: cordova phonegap-plugins inappbrowser

我制作了一个phonegap / cordova应用程序,它只是一个移动友好的网站。我通过InAppBrowser插件全屏加载网站(没有地址栏或“下一步”按钮)

这很好用,但是当你点击网站上的外部链接时,它会改变当前浏览器上的位置并且无法返回:(

我正在尝试使用executeScript函数将脚本发送到InAppBrowser以捕获我想要在新浏览器中加载的链接,但window.open调用只是更改现有全屏幕的URL并且没有&# 39;打开一个新的。

另一种选择是在系统浏览器中打开,但这也不起作用。

以下是我使用app.initialize()

调用的代码
initialize: function() {
  document.addEventListener('deviceready', function () {
    //opening my initial window
    var ref = window.open('http://www.mywebsite.com', '_blank', 'location=no,toolbar=no');
    ref.addEventListener('loadstop', function() {
        //when the initial window finishing loading, execute this script
        ref.executeScript(
        {code: "$(document).on('click','a',function(e){
            var $this = $(this);
            if($this.hasClass('external-link')){
            //attempt to load a new inappbrowswer for .external-linl
            var newWindow = window.open($this.attr('href'), '_blank', 'location=yes,toolbar=yes')};
            e.preventDefault })"
        });
    });
  }, false);
}

感谢您提供的任何指导!

0 个答案:

没有答案
相关问题