移动Safari Web应用程序 - 点击和手势反应迟钝

时间:2012-03-07 15:15:18

标签: ios ipad html5 user-interface mobile-safari

我开发了专门针对iPad设备的HTML5网络应用程序(移动版Safari)。在我看来,与本机iOS应用程序上的按钮和手势相比,应用程序中的HTML按钮和点击事件有些无响应。有没有人注意到这种现象?有没有人知道为什么会发生这种情况,以及如何使这些按钮更具响应性?感谢。

2 个答案:

答案 0 :(得分:3)

Enabling CSS active pseudo styles in Mobile Safari使可点击元素更具响应性。 谷歌有一份文件:"Creating Fast Buttons for Mobile Web Applications" 它说“Touchend事件没有延迟,所以这比点击事件快得多,但是有一些问题需要考虑:”但我没有意识到IOS上的点击或点击事件之间有任何速度差异。

此外,性能取决于您的Web应用程序的设备,IOS版本和演示类型(在Safari中,作为主屏幕Web应用程序,或在UIWebView中),这也会影响响应性。请参阅http://thetechjournal.com/electronics/iphone/report-ios-5-browser-performance-test.xhtml

上的效果图表

答案 1 :(得分:0)

我知道这是一个老问题,已经接受了答案,但我正在研究类似的问题,我找到了问题的答案。希望这可以帮助其他可能从谷歌搜索到这里的人,并发现接受的答案并不能真正提供您需要的所有信息。

我在这里找到了解决问题的方法......

http://developer.telerik.com/featured/300-ms-click-delay-ios-8

如果该链接变得糟糕,那么它的主旨是移动浏览器有目的地将点击事件延迟触发300毫秒,这样他们就可以判断手势是否真的是双击以进行缩放而不是常规点击以点击。

针对Chrome / Firefox / IE的问题有不同的内置解决方案,但对于Safari,确实没有内置解决方案;相反,你可以使用"快速点击"通过监听touchend事件而不是click事件来避免300ms延迟的javascript库。我确实认识到接受的答案简要提到了触发事件,但它并没有真正给出背景解释为什么需要这样做。

所以你有它 - 如果你遇到类似的问题,尝试搜索"快速点击"图书馆,或按照我链接到的博客上的建议。希望这会有所帮助。