创build适用于iOS Safari的“粘性”固定位置项目

在iOS Safari中,在用户停止平移之前,单指平移不会生成任何事件。 onscroll事件仅在页面停止移动和重绘时生成。

我需要一种方法来检测实时滚动。 具体来说,我想做一个粘滞的菜单,也将在iOS Safari的工作。 在非移动浏览器上,粘性菜单可以通过在元素上的“位置相对”到“位置固定”之间切换,同时收听onscroll事件。 这种方法不适用于手机浏览器,因为onscroll事件不会持续触发。 我能做什么?

回答我自己的问题。 iOS7现在支持位置:粘性演示: http ://html5-demos.appspot.com/static/css/sticky.html

我最近花了好几个小时试图为同样的问题提出一个实际的解决scheme。 有没有正确的方法来做到这一点,虽然有几个像样的黑客(其中大部分已经提到)。 问题是JavaScript在用户滚动时暂停。 当你考虑这个问题的时候,这是有道理的,但是这使得它很难实现固定的定位元素。

我能find的最好的东西就是谷歌的这个人。 您可以在移动Safari浏览器中查看http://gmail.com以查看它的行动。

https://developers.google.com/mobile/articles/webapp_fixed_ui

希望这可以帮助。

我有一个类似的问题,绑定处理程序touchstart / touchmove / touchend使用jquery检测单指滚动,它的工作完美。 在我的情况下,我需要移动另一个元素与尝试移动另一个元素的数量相同,并且在滚动尝试时更新得很好,所以它应该适合您的需求。

如果你想要的只是一个粘性菜单,你可以通过使用现有的库来节省一些头痛的问题。 我已经与iScroll取得了成功:

http://cubiq.org/iscroll

至less,你可以看看这是如何工作的,并围绕你的解决scheme。

快乐的黑客!

老主题肯定,但我可以看到很多访问在这里。 如果你想要的,是一个粘滞的菜单,你可以使用固定的定位。 不需要iScroll那里。