【问题标题】:Notification & WebViewBounce option not working - Phonegap [closed]通知和 WebViewBounce 选项不起作用 - Phonegap [关闭]
【发布时间】:2013-03-19 18:25:00
【问题描述】:

我在 Phonegap Build 上创建我的应用程序,在当前版本 (2.3.0) 上,我遇到了两个问题:

通知和 WebViewBounce(我正在尝试禁用)不起作用。

我尝试在 config.xml 上使用:

<preference name="webviewbounce" value="false"/>
<!-- Plugins -->
<plugins>
<plugin name="Notification" value="CDVNotification" />
</plugins>

我已经在 iOS 6.1.2 上尝试过,但没有成功。有谁知道如何让它工作?

谢谢,从现在开始。

【问题讨论】:

  • 我刚刚将 添加到我的 index.html 中,现在通知正在工作。我仍然有关于 WebViewBounce 的问题。

标签: jquery ios cordova mobile jquery-mobile


【解决方案1】:

PhoneGap 的配置文件(位于 www/config.xml 中)带有此首选项设置:

<preference name="webviewbounce" value="true" />

我以为你会设置为 false 来修复,但这不起作用。经过一番挖掘,我发现您需要将 iOS 的 DisallowOverscroll 设置为 true,而将 Android 的 disallowOverscroll 设置为 true。所以我的配置文件现在包含:

<preference name="webviewbounce" value="false" />
<preference name="DisallowOverscroll" value="true" />
<preference name="disallowOverscroll" value="true" />

涵盖所有可能发生的情况。

我还注意到我需要从我的视口元标记中删除 height=device-height。所以在我有之前:

<meta name="viewport" content="user-scalable=no, initial-scale=1, 
maximum-scale=1, minimum-scale=1, width=device-width, 
height=device-height, target-densitydpi=medium-dpi" />

我改成了:

<meta name="viewport" content="user-scalable=no, initial-scale=1, 
maximum-scale=1, minimum-scale=1, width=device-width, 
target-densitydpi=medium-dpi" />

如果不这样做,我的 100% 高度会在其高度中包含状态栏(或稍高的通话状态栏)。移除此值会完全移除滚动条。

然后,如果我需要滚动条,我会在我的应用程序中使用带有 overflow: auto 的 div。

【讨论】:

  • webviewbounce 已被弃用,取而代之的是 DisallowOverscroll。从 Cordova 3.6.3 开始,两者都不能在 Windows Phone 上运行,它们在该平台上被完全忽略。
【解决方案2】:

尝试在您的 HTML 中也添加:&lt;script type="text/javascript" src="cordova.js"&gt;&lt;/script&gt;

【讨论】:

  • 嗨@pennstump,感谢您的建议。我刚刚尝试了您的代码,但没有成功。
  • cordova.js 是用于手动构建PhoneGap的东西。 OP提到了PhoneGap Build,它使用phonegap.js。添加cordova.js 可能会做一些事情,但我认为对于内置功能来说没有必要。
猜你喜欢
  • 2017-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-26
相关资源
最近更新 更多