【发布时间】:2011-02-18 14:25:05
【问题描述】:
当 UIWebview 嵌入到 UIScrollview 中时,我对 UIWebview 中的 javascript 和触摸事件有疑问。
UIScrollview 有许多并排的视图(为简单起见,我将它们称为“子视图”)。每个子视图都是 iPad 屏幕的大小,向左/向右滑动应该在下一个/上一个子视图上移动。其中一个子视图是 UIWebview,我在其中运行一个小型 javascript 应用程序,该应用程序使用触摸事件,在某些情况下还使用 iScroll 组件。
不幸的是,UIWebview 嵌入在 UIScrollview 中的事实(苹果不推荐这种做法:http://developer.apple.com/library/ios/#documentation/uikit/reference/UIWebView_Class/Reference/Reference.html - 请参阅标有“重要”的框)。
我遇到的问题是在 UIWebview 子视图中滑动时的触摸事件。 例如,如果我加载谷歌主页,则滑动工作正常,下一个子视图将进入视图。但是,当我加载其中一个 JS 应用程序时,滑动不起作用。
我假设 UIWebview 组件获取触摸事件并将它们传递给其中的 Javascript,以便它可以做出相应的响应。然后它还会将它们传播回 UIScrollview 吗?还是由 Javascript 代码来确保它不会在事件中“停止传播”?非常感谢任何有关这些事件如何协调的信息。
最后,我不是 javascript 程序员和 Objective-c 程序员,虽然我了解它的基础知识,即我已经浏览了一些斯坦福 iTunes iOS 系列的 Objective-C 视频并编写了一些演示,但就是这样。
非常感谢您的宝贵时间。
【问题讨论】:
标签: javascript uiwebview uiscrollview touch-event