我正在使用AppGyver的SteroidsJS(本质上是具有增强性能的PhoneGap和Native UI)来创建一个Web应用程序。我注意到,当我双击一个元素时,它将滚动到该元素,即使我已禁用WebView过度滚动。这是一个问题,因为如果WebView内容比屏幕大小短,我甚至无法向上滚动。有没有解决这个问题?谢谢!
答案 0 :(得分:4)
对PhoneGap的分接延迟和双击问题进行了一些讨论。例如,检查此StackOverflow线程: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元素添加相同的维度。<canvas width=1024, height=768" ...>
这种方法似乎有效,至少在我的iPad上。
Javascript / JQuery:上面的StackOverflow链接专门讨论了jQuery方法。这意味着使用此要点有效地解释双击事件:https://gist.github.com/johan/2047491然后从您的webapp中适当地调用事件处理程序,例如
$("body").nodoubletapzoom();
我没有取得多大成功。