如何防止在PhoneGap中双击移动滚动?

Posted

技术标签:

【中文标题】如何防止在PhoneGap中双击移动滚动?【英文标题】:How to prevent mobile scrolling on double tap in PhoneGap? 【发布时间】:2013-11-23 01:35:12 【问题描述】:

我正在使用 AppGyver 的 SteroidsJS(本质上是具有增强性能和原生 UI 的 PhoneGap)来创建 Web 应用程序。我注意到当我双击一个元素时,它会滚动到该元素,即使我禁用了 WebView 过度滚动。这是一个问题,因为如果 WebView 内容比屏幕尺寸短,我什至无法向上滚动。有解决办法吗?谢谢!

【问题讨论】:

【参考方案1】:

关于PhoneGap的点击延迟和双击问题已经有一些讨论。例如,检查这个 *** 线程:Phonegap ios app screen slides up on double tap

我也一直在尝试解决这个问题,以下是我尝试过的一些方法:

    IOS 这是专门针对 IOS 的。尝试修改您的 /config.xml 文件以将“DisallowOverscroll”更改为 true。

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

    HTML 解决方案:这可能是单页网络应用的解决方案。检查您的应用的视口元标记。常见的约定是从设备推断视口的宽度和高度,例如

    <meta name="viewport" content="width=device-width, height=device-height">
    我发现这可以在浏览器区域中留出一些额外的空间。硬编码设备的屏幕尺寸为我解决了这个问题。例如,
    <meta name="viewport" content="width=1024, height=768">
    html 页面上的任何画布元素添加相同的尺寸。
    <canvas width=1024, height=768" ...>
    这种方法似乎很有效,至少在我的 iPad 上是这样。

    Javascript/JQuery: 上面的 *** 链接专门讨论了 jQuery 方法。这意味着使用以下要点有效地解释双击事件:https://gist.github.com/johan/2047491,然后从您的 web 应用程序中适当地调用事件处理程序,例如

    $("body").nodoubletapzoom();
    我在这方面没有取得太大的成功。

【讨论】:

以上是关于如何防止在PhoneGap中双击移动滚动?的主要内容,如果未能解决你的问题,请参考以下文章

如何在uiscrollview中双击缩放和两个手指缩放uiimage

如何防止在 Safari 移动浏览器上捏缩放(滚动)?

在iOS中双击图像不放大

使用 phonegap 防止键盘在 iOS 应用程序中向上推 webview

在Android Phonegap App中填写时防止滚动输入

如何在 Phonegap IOS 中停止过度滚动/弹跳