Phonegap / Cordova InAppBrowser无法启动

时间:2013-03-02 06:14:29

标签: javascript cordova browser in-app

我不确定为什么,但是当我做以下时

<img id="buttons" src="https://qikout.com/apppics/MerchantPromo.png" style="margin:1% auto; width:99% !important;" onclick="openextlink('https://qikout.com');"/>

function openextlink(url)
{
var ref = window.open(url, '_blank', 'location=no');
//window.plugins.childBrowser.showWebPage(url, { showLocationBar: true });
}

它工作正常。但是当我想从另一个函数中运行openextlink时,它不会打开窗口,而是加载页面,但不会向用户显示它。

例如。

function scan(){

    window.plugins.barcodeScanner.scan( function(result) {
            if(result.format != "QR_CODE")
            {
            alert("That is not a valid google Tag");
            }
            else
            {
                n = result.text.split(".com/");
                loadpet();

                    //alert("We got a barcode\n" +
                    //     "Result: " + result.text + "\n" +
                    //     "Format: " + result.format + "\n" +
                    //     "Cancelled: " + result.cancelled);

            }
        }, function(error) {
            alert("Scanning failed: " + error);
        }
    );

}

function loadpet(){
    $("#buttons").trigger("click");
    var link = "http://www.google.com/" + n[1];
    openextlink(link);
}

通过

工作
<div onclick="scan();" class="menu-right"></div>

基本上它扫描很好,它得到结果它将结果移动到loadpet函数,甚至将它发送到openextlink函数,但是不会弹出查看器。

1 个答案:

答案 0 :(得分:0)

您的window.open代码看起来正确(基于InAppBrowser在Cordova 3.0中的工作方式)。

您能否确认以下所有内容?

  • InAppBrowser插件在/#myapp#/platforms/#platform#/www/cordova_plugins.js文件中有一个条目?
  • InAppBrowser插件文件夹位于/#myapp#/ platforms / #platform#/ plugins /
  • InAppBrowser的相关SRC文件也在平台文件夹中(例如IOS插件src文件是:/#myapp#/ platforms / #plansform#/#appname#/ Plugins /)

如果以上所有内容都得到确认但仍然没有运气,您可以尝试将console.log('inappbrowser.js文件已加载!')行附加到inappbrowser.js文件的末尾以确认它确实正在加载(假设您已设置调试控制台并可以查看输出。)