任何人都有这个问题,页面会在转换之前快速跳转到顶部(让固定位置标题在页面中间丢失一半)?
在返回页面时,页面最终位于顶部,但由于我正在处理一个长列表,因此最好让它保持在我在上一页停止的位置。
我正在使用页内div而不是实际的单独页面,如果这可能有助于它。
任何提示赞赏!
答案 0 :(得分:6)
使用$ .mobile.defaultHomeScroll = 0。
答案 1 :(得分:2)
这是一个已知问题,可能会在jQuery Mobile 1.1中重构。问题是,为了设置转换到另一个页面的动画,viewport
必须位于页面的顶部,以便当前页面和转换的页面垂直排列。
如果您在一个页面上的长列表中间(例如1000px
),并且您要转移的页面只有几百个像素高,那么当前页面将在屏幕上正常显示动画,但是新页面将不可见,因为它将位于视口上方。
我通过使用iScroll来修复滚动区域。这样,所有页面都占据视口的100%宽度/高度,并且不会在转换前滚动到顶部。
答案 2 :(得分:2)
我们已多次遇到这种情况。我们的解决方案是确保所有页面都与屏幕的高度完全相同。如果您的内容比屏幕长,那么它会进入可滚动的DIV容器。如果您的目标是iOS 4及以下版本,则需要像iScroll这样的库来使DIV可滚动为溢出:滚动(或自动)无法正常工作。 完成此操作后,您可以在页面之间平滑过渡。