在android蜂窝webview/webkit中实现水平/垂直手指滑动滚动?

Hos*_*han 20 html5 android webkit webview android-3.0-honeycomb

我计划实现基于WebView的Honeycomb平板电脑应用程序(因此,基本上它将是一个仅适用于平板电脑HTML5基于Web的应用程序).

我希望通过滑动手指来实现水平和垂直滚动.为了更好地理解,我创建了示例大纲

通过滑动进行水平滚动


此图像显示类似于Honeycomb的本机设置活动,左右页面可垂直滚动 通过滑动进行垂直滚动

欢迎任何类型的指南或资源.谢谢

小智 12

看看iScroll:

iScroll 4完全重写了原始的iScroll代码.脚本开发开始是因为移动webkit(在iPhone,iPad,Android上)不提供在固定宽度/高度元素内滚动内容的本机方式.这种不幸的情况阻止了任何web-app具有position:absolute页眉和/或页脚以及内容的滚动中心区域.

虽然最新的Android版本支持此功能(虽然支持不是最佳),Apple似乎不愿意添加一个手指滚动到div ...

  • 只想更新这个问题 - 我们已经将iScroll用于iOS和Android的相对较大的应用程序.最后,它产生了比它解决的更多头痛.不要误会我的意思,iScroll是一个很好的库,它运行良好,但它有缺点.所以,在选择这样的库之前,你应该彻底检查一下.把它作为警告.谢谢 (6认同)
  • 那么你用了什么呢? (2认同)

Hos*_*han 5

这是我到目前为止所发现的:

这取决于您希望如何实现滚动.如果你想附加滑动事件,这是使用众所周知的库实现的最简单方法:

  • jqTouch - 它有左右滑动事件,可以挂钩向左或向右滚动(似乎所有基于webkit的动画仅适用于iOS设备).请注意,项目仍处于测试阶段且不高度活跃.编辑:这也是Sencha Labs的一部分 - 他积极维护Sencha Touch.
  • Sencha Touch - 他们更好地支持移动和平板电脑中的几乎所有东西.(注意:它对开源应用程序是免费的,但对于商业应用程序则不是 - 编辑:它们实际上有商业许可证.有关许可的更多信息,请访问他们的网站)
  • jQueryMobile - 它们非常稳定(截至目前为RC1),并且左右滑动事件,但我找不到向上或向下滑动.如果您只需要向左滑动,请点击,按住,然后使用jQM.他们拥有最好的社区支持.
  • RAW JS - 最后,如果你想要一些原始的javascript,请访问HTML5Rocks文章,以更好地深入了解触摸事件的工作原理.

我希望它有所帮助.我仍然在努力实现向上滚动,因为我不想等待滑动结束,而是我试图实现即时滚动反馈,使用RAW JS坐标非常接近,但不满意.