我不确定为什么,但是当我做以下时
<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函数,但是不会弹出查看器。
答案 0 :(得分:0)
您的window.open代码看起来正确(基于InAppBrowser在Cordova 3.0中的工作方式)。
您能否确认以下所有内容?
如果以上所有内容都得到确认但仍然没有运气,您可以尝试将console.log('inappbrowser.js文件已加载!')行附加到inappbrowser.js文件的末尾以确认它确实正在加载(假设您已设置调试控制台并可以查看输出。)