3

我在 Windows XP 上,我使用 Cordova/Phonegap 3.0 为 Android 开发。

我已经像这样安装了 InAppBrowser: - 我在我的项目文件夹中打开了一个命令窗口 - 我做了:

$ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-inappbrowser.git
$ cordova plugin rm org.apache.cordova.core.inappbrowser

- 我添加了:

<feature name="InAppBrowser">
<param name="android-package" value="org.apache.cordova.InAppBrowser" />
</feature>

在 app/res/xml/config.xml 中。

第一个问题。如何确定 InAppBrowser 已安装?

我已经在我的 HTML 代码中加入了这个链接:

<a href="#" onclick="window.open('http://www.example.com','_blank','location=yes','closebuttoncaption=back');">open</a>

此链接有效,但我没有地址栏,也没有“返回”按钮。我错过了什么 ?

谢谢

更新

好吧,我傻...第二行($ cordova plugin rm org.apache.cordova.core.inappbrowser)删除插件...所以,现在我只使用第一行并且插件安装正确。

但我还是有问题。当我使用:

<a href="#" onclick="window.open('http://www.example.com','_blank','location=yes','closebuttoncaption=back');">open</a>

它工作正常:地址栏和按钮(以“完成”作为标题而不是“返回”)存在。但是当我这样做时(位置=否):

<a href="#" onclick="window.open('http://www.example.com','_blank','location=no','closebuttoncaption=back');">open</a>

该链接打开页面,但没有按钮。有什么建议吗?

4

4 回答 4

3

window.open方法接受 3 个参数,最后一个是可选的逗号分隔的特征字符串。所以你要:

<a href="#" onclick="window.open('http://www.example.com','_blank','location=no,closebuttoncaption=back');">open</a>

另请参阅https://github.com/apache/cordova-plugin-inappbrowser

于 2015-06-05T01:58:12.317 回答
1

这个人的回答为我解决了您的确切(第二个)问题:https ://stackoverflow.com/a/16596554/826308

它可以让您指定 location=no 但仍然获得 DONE 按钮。

我维护了我自己的 inappbrowser 副本(出于其他原因),并且只是推动了这个变化,以防你发现它有用/更容易:http: //goo.gl/Pk4MzR

于 2013-09-26T15:50:46.133 回答
1

在 Android 中,只有当您设置了后退按钮时,您才有后退按钮location='yes',在 iOS 中,后退按钮始终存在于 inAppBrowser 中。

但是,您可以修改 /platforms/android/src/org/... 中的 inAppBrowser.java 文件搜索该行toolbar.addView(edittext);并对其进行注释(我在第 566 行找到它)

希望我能帮忙:)

于 2013-08-20T11:30:43.037 回答
0


第一个问题:您必须签入您的项目。
并且:我错过了什么吗?您尝试放置代码:

window.open('http://www.example.com','_blank','location=yes','closebuttoncaption=back');

在 onDeviceReady() 中,InAppBrowser 将有地址栏。
那是因为您在设备未准备好时调用 InAppBrowser 打开。

于 2013-08-15T06:44:10.177 回答