我的inApBrowser在我的应用程序中运行得很好......但是,我升级了一些东西,现在它打开了URL而没有任何关闭它的方法。你必须杀死这个应用程序。
我尝试了很多变体:window.open('http://cnn.com','_blank','location=yes,toolbar=yes');
myconfig.xml有:
<feature name="InAppBrowser">
<param name="ios-package" value="CDVInAppBrowser" />
</feature>
我没有错误...页面打开...但是没有办法关闭并返回应用程序。我见过很多人为URL识别提供解决方案并使窗口关闭......但是我需要childBrowser插件方法...用户可以在他/她完成查看页面时关闭窗口。
Phonegap 3.0 - JqueryMobile 1.2 - IOS 7.0.2 - xCode 5.0 -
非常感谢任何帮助!
答案 0 :(得分:4)
您的语法看起来没问题,但请试试这些代码段:
Pure JavaScript:
var ref = window.open('http://cnn.com', '_blank', 'location=yes,toolbar=yes');
HTML + JavaScript:
<a href="#" onclick="var ref = window.open('http://cnn.com', '_blank', 'location=yes,toolbar=yes');">CNN Link</a>
另外,请检查您是否正确安装了InAppBrowser插件(PhoneGap / Cordova 3.0+需要通过命令行单独安装)。您的config.xml文件看起来正确,但只需确保插件的其余部分安装正确。
您可以使用以下命令列出项目中所有已安装的插件...
使用Cordova:cordova plugins
使用PhoneGap:phonegap local plugin list
您也可以转到桌面,导航到项目中的“plugins”文件夹,并检查是否有名为“org.apache.cordova.inappbrowser”或“org.apache.cordova.core.inappbrowser”的文件夹'里面。
安装InAppBrowser插件(如有必要)......
使用Cordova:cordova plugin add org.apache.cordova.inappbrowser
使用PhoneGap:phonegap local plugin add org.apache.cordova.inappbrowser
根据您的描述,听起来您的网页在应用的网页视图中打开,而不是InAppBrowser窗口。如果您使用'_self'
而不是'_blank'
,则通常会获得这种行为。希望这里有些东西可以帮助解决它。
答案 1 :(得分:2)
如果您使用PhoneGap Build,则需要使用不同的语法,即(请参阅plugin info):
<gap:plugin name="org.apache.cordova.inappbrowser" />
另见PGB plugin repository。它现在似乎是最新的。您可以看到simple test application的工作版本。
请注意,如果您自己构建(在计算机上本地),则可能无法正常工作。如果您在当地建造,请使用wicketyjarjar的说明。
答案 2 :(得分:1)
inAppBrowser无法与Phonegap 3.0.0
一起使用,并且必须在config.xml
中对其进行更改才能使其在ios和Android上都有效:
<plugin name="inAppBrowser">
到
<gap:plugin name="org.apache.cordova.inappbrowser" />
此外,如果您想要包含emailcomposer,请使用config.xml
<gap:plugin name="de.appplant.cordova.plugin.email-composer" />
并在Javascript文件中添加以下行:
var ops = {
callback: function (result) {
navigator.notification.alert(result);
},
subject: "Look at this photo",
body: "Take a look at <b>this</b>:",
toRecipients: ["example@email.com", "johndoe@email.org"],
ccRecipients: [],
bccRecipients: [],
isHTML: true,
attachments: ["_complete_path/image.png"]
}
function mail(name, url) {
window.plugin.email.open({
to: [],
cc: [],
bcc: [],
subject: name,
body: url,
isHtml: true
});
}
答案 3 :(得分:0)
我遇到了同样的问题。在我的情况下,它是由忘记包含cordova.js脚本引起的。
<script type="text/javascript" src="cordova.js"></script>