Javascript 如何使用cordova/phonegap在inApp浏览器中打开Paypal
我正在PhoneGap中使用JavaScript集成PayPal集成,但我面临一个问题,它无法在inApp浏览器中打开。相反,它是在我的应用程序之外打开的。因此,我希望在inApp浏览器中打开PayPal URL。Javascript 如何使用cordova/phonegap在inApp浏览器中打开Paypal,javascript,android,cordova,phonegap-cli,Javascript,Android,Cordova,Phonegap Cli,我正在PhoneGap中使用JavaScript集成PayPal集成,但我面临一个问题,它无法在inApp浏览器中打开。相反,它是在我的应用程序之外打开的。因此,我希望在inApp浏览器中打开PayPal URL。 我是PhoneGap的新手,所以如果有人知道,请帮忙。下面是代码 <form id="openpaypal" method="post" target="_top"> <input type="hidden" name="cmd" value="_s-xclick"
我是PhoneGap的新手,所以如果有人知道,请帮忙。下面是代码
<form id="openpaypal" method="post" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="NSH74TD463ZSU">
<input type="image" src="https://www.paypalobjects.com/en_GB/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal – The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypalobjects.com/en_GB/i/scr/pixel.gif" width="1" height="1">
</form>
//script here
<script>
document.getElementById("openpaypal").addEventListener("click", openBrowser);
function openBrowser() {
alert("called here");
var url = 'https://www.paypal.com/cgi-bin/webscr';
var target = '_blank';
var options = "location=yes"
var ref = cordova.InAppBrowser.open(url, target, options);
ref.addEventListener('loadstart', loadstartCallback);
ref.addEventListener('loadstop', loadstopCallback);
ref.addEventListener('loadloaderror', loaderrorCallback);
ref.addEventListener('exit', exitCallback);
function loadstartCallback(event) {
console.log('Loading started: ' + event.url)
}
function loadstopCallback(event) {
console.log('Loading finished: ' + event.url)
}
function loaderrorCallback(error) {
console.log('Loading error: ' + error.message)
}
function exitCallback() {
console.log('Browser is closed...')
}
}
</script>
//这里的脚本
document.getElementById(“openpaypal”).addEventListener(“单击”,openBrowser);
函数openBrowser(){
警报(“在此呼叫”);
var url='1〕https://www.paypal.com/cgi-bin/webscr';
var目标='u blank';
var options=“位置=是”
var ref=cordova.InAppBrowser.open(url、目标、选项);
参考addEventListener(“loadstart”,loadstartCallback);
参考addEventListener('loadstop',loadstopCallback);
ref.addEventListener('LoadError',loaderrorCallback);
参考addEventListener(“退出”,exitCallback);
函数loadstartCallback(事件){
console.log('加载已开始:'+事件.url)
}
函数loadstopCallback(事件){
console.log('加载完成:'+事件.url)
}
函数loaderrorCallback(错误){
console.log('加载错误:'+错误消息)
}
函数exitCallback(){
console.log('浏览器已关闭…')
}
}
用于cordova命令
先添加插件
是链接
这是你的剧本
<script src="assets/js/cordova.js" type="text/javascript"></script>
<script src="assets/js/min/app.js" type="text/javascript"></script>
用于PhoneGap构建
将此行添加到config.xml文件
<plugin name="org.li8.inappbrowser" spec="0.1" source="pgb" />
是的,这是因为您的第一行,只需添加您的
cordova.js
,而不添加任何文件夹路径,如,这些是为phonegap添加的脚本,我已经添加了,但仍然没有在inApp Browser中打开。您确定已从中删除文件夹路径吗?是的,我已删除。。我没有给它任何文件夹路径谢谢你的信息。我会查一下的,谢谢。我已经找到了使用javascript的替代解决方案。@ShivanandL.C您可以发布您是如何解决的详细信息吗。我正在寻找类似的代码。
<script src="cordova.js" type="text/javascript"></script>
<plugin name="org.li8.inappbrowser" spec="0.1" source="pgb" />
<script src="phonegap.js" type="text/javascript"></script>
document.addEventListener("deviceready",onDeviceReady,false);
function onDeviceReady()
{
document.getElementById("openpaypal").addEventListener("click", openBrowser);
}
function openBrowser()
{
var url = 'https://www.paypal.com/cgi-bin/webscr';
var target = '_blank';
var options = "location=yes";
var ref = window.open(url, target, options);
}