如何防止在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
使用 phonegap 防止键盘在 iOS 应用程序中向上推 webview